Tôi đang sử dụng Tomcat 6.0.24 trên Ubuntu (JDK 1.6) với một ứng dụng thực hiện các yêu cầu kiểu Comet trên trình kết nối HTTPS (trực tiếp với Tomcat, không sử dụng APR).
Tôi muốn đặt thời gian duy trì thành 5 phút để tôi không phải làm mới các kết nối bỏ phiếu dài của mình. Đây là cấu hình của tôi:
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="1000" keepAliveTimeout="330000"
scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS" />
Thật không may, có vẻ như máy chủ sẽ đóng kết nối sau 65 giây. Bản pcap từ một phiên mẫu đi như thế này:
T=0 Client sends SYN to server, handshake etc.
T=65 Server sends FIN to client
T=307 Client sends FIN to server
(Tôi đoán thời gian chờ 5 phút trên máy khách là do HTTP lib không phát hiện ra ổ cắm đóng ở cuối máy chủ, nhưng trong mọi trường hợp - máy chủ không nên đóng kết nối sớm như vậy)
(chỉnh sửa: điều này hoạt động như mong đợi khi sử dụng trình kết nối HTTP tiêu chuẩn)