W tekście opisano trzy rozwiązania zapobiegające przerwaniu połączenia:
-
Skonfiguruj parametry połączenia za pomocą
autoReconnect=true
. Jest to właściwość ciągu połączenia adresu URL, która działa na poziomie sterownika. Musisz zmienić ciąg połączenia w konfiguracji źródła danych.url="jdbc:mysql://localhost:3306/confluence?autoReconnect=true"
-
Zwiększ limit czasu. Jest to zwykle właściwość bazy danych. Możesz zwiększyć tę wartość, aby zobaczyć, czy połączenie jest mniej przerywane.
-
Skonfiguruj pulę połączeń, aby przetestować poprawność połączenia. Odbywa się to na basenie, a nie na poziomie kierowcy. Będzie to zależeć od używanej implementacji źródła danych. Ale powinno być konfigurowalne we właściwości źródła danych, jeśli używasz zbiorczego, np. c3p0 .
Dodatkowe uwagi:
- Źródło danych/pula może również mieć limit czasu, który odpowiada czasowi, w którym bezczynne połączenie pozostaje w puli. Nie mylić z limitem czasu db.
- Istnieje kilka sposobów sprawdzenia poprawności połączenia. Jednym z popularnych sposobów jest posiadanie atrapy stołu testowego. Pula wystawi wybór na fikcyjnej tabeli testowej, aby sprawdzić, czy połączenie jest nadal OK.