为什么我们需要网络套接字?

pho*_*x24 20 javascript websocket

这更像是一个n00b问题,但我从未真正知道答案.

那为什么我们需要websockets协议?

并且,与彗星式/长轮询/悬挂式GET风格的HTTP使用有什么优势?

Spo*_*oks 18

Comet和Ajax都可以提供最终用户体验,提供类似桌面的功能和低用户感知的延迟,只有Web套接字能够提供本机方式,以准确有效地将事件传入和传出浏览器,延迟可以忽略不计.

通过轮询,它会产生不必要的请求,因此,在低消息速率情况下会不必要地打开和关闭许多连接.(与轮询一样,它会定期发送HTTP请求并立即收到响应.)

Web套接字消除了开销,并大大降低了复杂性.

  • Web套接字正在进行AJAX实时更新​​:) (9认同)

Sha*_*okh 11

1-WebSocket是一种自然的全双工,双向,单插槽连接.使用WebSocket,您的HTTP请求将成为打开WebSocket连接的单个请求,并重用从客户端到服务器以及服务器到客户端的相同连接.

2-WebSocket减少了延迟.例如,与轮询不同,WebSocket只发出一个请求.服务器不需要等待来自客户端的请求.同样,客户端可以随时向服务器发送消息.此单个请求极大地减少了轮询的延迟,轮询以一定间隔发送请求,无论消息是否可用.

3-WebSocket使实时通信更加高效.您始终可以通过HTTP使用轮询(有时甚至是流式传输)来通过HTTP接收通知.但是,WebSocket可以节省带宽,CPU功耗和延迟.WebSocket是一项性能创新.

4-WebSocket是一种底层网络协议,使您可以在其上构建其他标准协议.

5-WebSocket是为HTML5应用程序提供高级功能以与其他平台竞争的努力的一部分.

6-WebSocket是关于Simplicity的