Co dokładnie oznacza Connection Lifetime=0
w ciągu połączenia?Czas życia połączenia = 0 w ciągu połączenia MySql
Odpowiedz
Zaktualizowana: Wartość zero (0) powoduje, że łączone połączenia mają maksymalny limit czasu połączenia.
Ref.
Oznacza to, że nie ma limitu czasu połączenia. Na przykład, jeśli ustawiono 300, jeśli w tym czasie zapytanie nie zostanie zakończone, powiedzmy, ponieważ jest dużo danych, zostanie zgłoszony wyjątek dotyczący limitu czasu. Kiedy jest to 0, będzie działało aż do zakończenia zapytania.
To jest nieprawidłowe. Zobacz moją odpowiedź: http://stackoverflow.com/questions/1233488/connection-lifetime0-in-mysql-connection-string/3444881#3444881 –
Ponadto Podczas korzystania Lifetime Connection: niszczy połączono przyłączy Jeśli czas połączenie jest otwarte, jest większa niż Lifetime połączenia, połączenie nie jest użyteczny.
I sugerują, że przy użyciu Lifetime Connection Jeśli nie masz połączenia w obrębie klastra serwera
na podstawie moich badań wierzę, że Myra jest najbliżej od innych odpowiedzi.
To jest nie taki sam jak limit czasu połączenia.
Zamiast zobaczyć ten Pseudokod od this artykułu:
On SqlConnection.Close
Check if time the connection has been open is greater than Connection Lifetime if it is, throw the connection away
Else Put connection on the pool
Ten sam artykuł wyjaśnia, dlaczego rzadko chcą wykorzystać tę właściwość (i sytuacje, w których może).
Należy pamiętać, że zmieniono jego nazwę na "Limit czasu obciążenia konta", próbując wyjaśnić zachowanie w odniesieniu do powyższego artykułu.
To jest nieprawidłowe. Zobacz moją odpowiedź: http://stackoverflow.com/questions/1233488/connection-lifetime0-in-mysql-connection-string/3444881#3444881 –
Nie mogę usunąć tej odpowiedzi, ponieważ została zaakceptowana, a plakatu nie widziano. 2 lata. –