这更像是一个n00b问题,但我从来没有真正知道答案。
那么为什么我们需要websockets协议呢?
而且,与使用comet风格/长轮询/挂起GET风格的HTTP相比,有什么优势呢?
发布于 2010-09-01 19:50:10
Comet和Ajax都可以提供终端用户体验,提供类似桌面的功能和用户感知的低延迟,但只有Web Sockets履行了承诺,提供了一种本地方法,以准确有效地将事件传入和流出浏览器,而延迟可以忽略不计。
通过轮询,它会发出不必要的请求,因此,在低消息率的情况下,许多连接都会被不必要地打开和关闭(与轮询一样,它会定期发送HTTP请求并立即接收响应)。
Web套接字消除了开销并极大地降低了复杂性。
发布于 2013-07-07 04:14:04
1-WebSocket是一种自然的全双工、双向、单套接字连接。使用WebSocket,您的HTTP请求将成为打开WebSocket连接的单个请求,并重用从客户端到服务器以及服务器到客户端的相同连接。
2-WebSocket减少了延迟。例如,与轮询不同,WebSocket发出单个请求。服务器不需要等待来自客户端的请求。类似地,客户端可以随时向服务器发送消息。这个单一的请求极大地减少了轮询的延迟,轮询每隔一段时间发送一个请求,而不管消息是否可用。
3-WebSocket使实时通信更加高效。您可以始终使用HTTP上的轮询(有时甚至是流)来接收HTTP上的通知。但是,WebSocket可节省带宽、CPU功率和延迟。WebSocket是性能上的创新。
4-WebSocket是一种底层网络协议,使您能够在其上构建其他标准协议。
5-WebSocket是为HTML5应用程序提供高级功能以与其他平台竞争的努力的一部分。
6-WebSocket关乎简单性
发布于 2012-01-13 23:20:42
这里有一篇关于websocket.org上的benefits of websocket over polling的文章
https://stackoverflow.com/questions/3617583
复制相似问题