Я полагаю, что это проблема причала.Я не видел, чтобы браузеры закрывали соединения WebSocket из-за неактивности, и я не сталкивался с другими серверами WebSocket, которые превышают время ожидания соединений WebSocket.
Jetty (в основном) была (была) ориентирована на создание сервлетов приложений на основе HTTP.В этом контексте HTTP-соединения необходимо очищать довольно агрессивно, а HTTP не был предназначен для долговременных соединений, поэтому разумно иметь короткий тайм-аут по умолчанию.
Я не видел точную проблему, которую вы описали (закрытие даже во время активности), но я вижу, что соединения WebSocket закрываются после 30 секунд бездействия.Вполне возможно, что в более старых версиях Jetty или в текущей версии по какой-либо другой причине таймер не сбрасывается активностью WebSocket.Я обхожу это, используя метод setMaxIdleTime в моем объекте BlockingChannelConnector, чтобы установить значение тайм-аута в Integer MAX_VALUE.