ruby HttpClient库在使用持久连接响应后关闭套接字?

时间:2010-09-06 20:37:31

标签: ruby http tcp

我正在使用HTTPClient gem(http://github.com/nahi/httpclient)作为ruby,将数据发布到IIS 6.1。即使两者都支持HTTP 1.1,它似乎在每个请求发出后关闭套接字,而不是使用持久连接。我没有添加任何标志来启用持久连接(主要是因为在源代码上看起来它们应该默认启用它们。)

我认为套接字关闭的原因是,如果我在每次请求时都在Wireshark中查看请求,我会看到从客户端发送到服务器的FIN / ACK TCP数据包,然后以相反的方式发回。

我误读了那个或者这是否意味着套接字被关闭了?

1 个答案:

答案 0 :(得分:1)

Wikipedia's article on TCP表明FIN / ACK数据包是终止连接的信号。检查客户端或服务器中的哪一个发起了FIN数据包的发送 - 即请求连接关闭的一方。

正如您在来源中看到的那样HTTP 1.1 implementation should assume that connections are persistent by default

客户端是否在其请求中指定了HTTP 1.1,服务器是否相应地做出响应?