HTTP持久连接VS TCP套接字连接(HTTP persistent connection vs

2019-07-19 16:54发布

从这个文章维基百科:

keepalive消息并没有正式在HTTP 1.0的支持。 在HTTP 1.1的所有连接都认为是持久的,除非另有声明。

  • 这是否意味着使用这种机制实际上,我可以模拟一个TCP套接字连接?
  • 使用这个我可以做一个服务器“推送”数据到客户端?
  • 是否所有的HTTP连接,即使我使用连接到堆栈溢出“HTTP持久”的人吗?
  • 是否COMET服务器推送的技术使用HTTP持久连接的这种机制将数据推送到客户端?

Answer 1:

  • 这是否意味着使用这种机制实际上,我可以模拟一个TCP套接字连接?

不是真的,插座更多的功能和灵活性。

  • 使用这个我可以做一个服务器“推送”数据到客户端?

不是直接的,它仍然是一个请求/响应协议; 持久连接只是意味着客户可以使用相同的基础套接字发送多个请求并接收相应的响应。

  • 是否所有的HTTP连接,即使我使用连接到堆栈溢出“HTTP持久”的人吗?

除非你的浏览器(或一个奇特的服务器)说,否则,是的。

  • 难道服务器推送的COMET技术使用HTTP持久连接的这种机制将数据推送到客户端?

均田(流媒体,至少),但在顶部有很多的奶油。 还有其他彗星的实现方法,如隐藏的iframe也AJAX长轮询,可能不需要持久连接(这给一些防火墙&C的拟合反正;-)。



Answer 2:

实际上,HTTP服务器可以“推”数据连接http客户端没有客户端请求它。 请参阅“HTTP服务器推送”在http://en.wikipedia.org/wiki/Push_technology 。 但是它似乎被普遍实施。



文章来源: HTTP persistent connection vs TCP socket connection