Это прекрасно работает, если я отключу сохранение активности на HTTP-сервере Apache или на JVM от клиента.
Настройка:
- HTTP-сервер Apache, конфигурация по умолчанию (также пробовал с увеличением времени ожидания активности до 60 секунд), подключен к tomcat через AJP.
- Сервер Apache Tomcat, конфигурация по умолчанию.
- Приложение сервера Java (стек Spring) отвечает на HTTP-запросы внутри tomcat.
- Клиент Java (Spring, RestTemplate) -> отправка HTTP-вызовов на этот сервер.
- Клиент Java может работать на том же сервере (-> http для локального хоста) или на другом компьютере, проблема остается прежней
- iptables отключены на сервере
- Для теста использовался только один клиент -> ни один другой клиент на данный момент не подключен к серверу
Код: Выделить всё
...other stuff...
13:39:32.018 Do Rest call
13:39:32.111 Rest call return headers: Keep-Alive=[timeout=60, max=97], Connection=[Keep-Alive]
13:39:32.609 Do Rest call
13:39:33.849 Rest call return headers: Keep-Alive=[timeout=60, max=96], Connection=[Keep-Alive]
13:39:33.869 Do Rest call
...LONG RUNNING TRANSACTION...
13:40:05.828 Rest call return headers: Keep-Alive=[timeout=60, max=95], Connection=[Keep-Alive]
13:40:05.833 Do Rest call -> _java.net.SocketException: Unexpected end of file from server_; no trace in any log file on the server for this request
Здесь вы можете увидеть транзакции, зарегистрированные на сервере tshark

Подробнее здесь: https://stackoverflow.com/questions/560 ... -is-active
Мобильная версия