У меня Apache httpd с mod_jk. У меня проблема с прерванными соединениями после длительного периода простоя: Apache перестает отвечать, и каждый HTTP-запрос зависает на 15 минут. Я попытался отключить пул соединений mod_jk (с помощью DisableReuse), и проблема исчезла.
В документации Tomcat написано:
Using this option will have a strong performance penalty for Apache and Tomcat.
Use this only as a last resort in case of unfixable network problems.
If a firewall between Apache and Tomcat silently kills idle connections,
try to use the worker attribute socket_keepalive in combination with
an appropriate TCP keepalive value in your OS.
Пробовал использовать socket_keepalive = true, стало лучше, но все равно иногда HTTP-запрос зависает на 15м.
Таким образом, кажется, что без socket_keepalive 90% соединений мертвы, с socket_keepalive 10%, с DisableReuse 0%.
Операционная система - RedHat Enterprise 6.5. Какое значение TCP поддерживает активность активности? и Как это должно быть настроено в моей ОС, чтобы socket_keepalive работал правильно?