代码之家  ›  专栏  ›  技术社区  ›  Ceilingfish

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

  •  1
  • Ceilingfish  · 技术社区  · 15 年前

    http://github.com/nahi/httpclient )对于ruby,将数据发布到iis6.1。尽管两者都支持HTTP1.1,但它似乎是在发出每个请求后关闭套接字,而不是使用持久连接。我没有添加任何标志来启用持久性连接(主要是因为在浏览了源代码之后,它们似乎应该在默认情况下启用)。

    我认为套接字正在关闭的原因是,如果我在Wireshark中观察每个请求发出后的请求,我会看到FIN/ACK TCP数据包从客户端发送到服务器,然后以另一种方式发送回来。

    我是误读了还是说插座要关上了?

    1 回复  |  直到 15 年前
        1
  •  1
  •   dariom    15 年前

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

    正如你在来源中看到的,一个 HTTP 1.1 implementation should assume that connections are persistent by default .

    推荐文章