Я пытаюсь проверить, используются ли постоянные соединения HTTP во время связи с запущенным мной веб-сервером Tomcat. В настоящее время я могу получить ресурс на моем сервере из браузера (например, Chrome) и проверить с помощью netstat, что соединение установлено:
# visit http://server:8080/path/to/resource in Chrome
[server:/tmp]$ netstat -a
...
tcp 0 0 server.mydomain:webcache client.mydomain:55502 ESTABLISHED
Однако, если я использую curl, я никогда не увижу соединение с сервером в netstat.
[client:/tmp]$ curl --keepalive-time 60 --keepalive http://server:8080/path/to/resource
...
[server:/tmp]$ netstat -a
# no connection exists for client.mydomain
Я также попытался использовать следующую команду curl:
curl -H "Keep-Alive: 60" -H "Connection: keep-alive" http://server:8080/path/to/resource
Вот версия curl моей клиентской машины:
[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
Как заставить curl использовать постоянное / keepalive соединение? Я немного погуглил на эту тему, но безуспешно. Следует отметить, что я также использовал links
на клиентском компьютере для получения ресурса, и это дает мне ESTABLISHED
соединение на сервере.
Дайте мне знать, если мне нужно предоставить больше информации.