Próbuję zweryfikować, czy trwałe połączenia HTTP są używane podczas komunikacji z serwerem internetowym Tomcat, który mam uruchomiony. Obecnie mogę pobrać zasób na moim serwerze z przeglądarki (np. Chrome) i zweryfikować za pomocą netstat, czy połączenie zostało nawiązane:
# visit http://server:8080/path/to/resource in Chrome
[server:/tmp]$ netstat -a
...
tcp 0 0 server.mydomain:webcache client.mydomain:55502 ESTABLISHED
Jednak jeśli używam curl, nigdy nie widzę połączenia na serwerze w netstat.
[client:/tmp]$ curl --keepalive-time 60 --keepalive http://server:8080/path/to/resource
...
[server:/tmp]$ netstat -a
# no connection exists for client.mydomain
Próbowałem także użyć następującego polecenia curl:
curl -H "Keep-Alive: 60" -H "Connection: keep-alive" http://server:8080/path/to/resource
Oto wersja curl mojego komputera klienckiego:
[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
Jak uzyskać curl, aby korzystać z trwałego połączenia / utrzymywania połączenia? Zrobiłem sporo Google na ten temat, ale bez powodzenia. Należy zauważyć, że użyłem również links
na komputerze klienckim do pobrania zasobu, a to daje mi ESTABLISHED
połączenie na serwerze.
Daj mi znać, jeśli będę musiał podać więcej informacji.