Tôi đang cố gắng xác minh rằng các kết nối liên tục HTTP đang được sử dụng trong quá trình giao tiếp với máy chủ web Tomcat mà tôi đã chạy. Hiện tại, tôi có thể truy xuất tài nguyên trên máy chủ của mình từ trình duyệt (ví dụ: Chrome) và xác minh bằng netstat rằng kết nối được thiết lập:
# visit http://server:8080/path/to/resource in Chrome
[server:/tmp]$ netstat -a
...
tcp 0 0 server.mydomain:webcache client.mydomain:55502 ESTABLISHED
Tuy nhiên, nếu tôi sử dụng curl, tôi không bao giờ thấy kết nối trên máy chủ trong netstat.
[client:/tmp]$ curl --keepalive-time 60 --keepalive http://server:8080/path/to/resource
...
[server:/tmp]$ netstat -a
# no connection exists for client.mydomain
Tôi cũng đã thử sử dụng lệnh curl sau:
curl -H "Keep-Alive: 60" -H "Connection: keep-alive" http://server:8080/path/to/resource
Đây là phiên bản curl của máy khách của tôi:
[server:/tmp]$ curl -V
curl 7.19.5 (x86_64-unknown-linux-gnu) libcurl/7.19.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5 libssh2/1.1
Protocols: tftp ftp telnet dict http file https ftps scp sftp
Features: IDN IPv6 Largefile NTLM SSL libz
Làm cách nào để có được curl để sử dụng kết nối liên tục / liên tục? Tôi đã thực hiện khá nhiều về Google về chủ đề này, nhưng không thành công. Cần lưu ý rằng tôi cũng đã sử dụng links
trên máy khách để lấy tài nguyên và điều đó cho tôi một ESTABLISHED
kết nối trên máy chủ.
Hãy cho tôi biết nếu tôi cần cung cấp thêm thông tin.