关于HTTP

来源:互联网 发布:网络猫和路由器的区别 编辑:程序博客网 时间:2024/06/05 08:24
        HTTP是半双工的协议,在同一时刻流量只能单向流动,客户端向服务器发送请求(单向),然后服务器响应请求(单向)。

        轮询是一种定时的同步调用,客户端向服务器发送情求查看是否有可用的新信息。请求已固定的时间间隔发出,不管是否有信息,客户端都会得到响应:如果有可用信息,服务器发送这些信息;如果没有,服务器返回一个拒绝响应,客户端关闭连接。缺点:会打开或者关闭许多不必要的连接。

        长轮询(也称作Comet或者反向Ajax),客户端回想服务器请求信息,并在设定的时间段内打开一个连接。服务器如果没有任何信息,会保持请求打开,直到有客户端可用的信息,或者直到指定的超时时间用完为止。这时,客户端重新向服务器请求信息。延长HTTP响应的完成,直到服务器发送有用的信息。缺点:也同样可能需要频繁重连到服务器读取数据,还缺乏标准的实现。

        HTTP流化,客户端发送一个请求,服务器发送并维护一个持续更新和保持打开的(可以使五险或者规定的时间内)的开放的响应。每当服务器又需要交付给客户端的信息时,他就更新响应。缺点:服务器从不打出完成HTTP响应的请求,从而是连接一直保持打开, 在这种情况下,代理和防火墙可能缓存响应,导致信息交付的延迟增加。

        以上每种方法,客户端都必须等待请求返回,才能发出后续的请求,显著增加了延迟。
原创粉丝点击