赞
踩
超文本传输协议(HTTP)作为一种简单的协议,在面对功能日益丰富的 Web应用时,遇到了如下瓶颈:
1、在客户端请求时,会建立一个TCP连接,然后发送请求,服务端给出响应,然后连接就关闭了。(现在的HTTP1.1支持消除了这个瓶颈)
2、客户端和服务器之间的交互是采用请求/响应模式,缺乏服务器通知客户端的机制,在需要通知的场景,如聊天室,游戏,客户端应用需要不断地轮询服务器。
3、请求/响应首部不经过压缩就发送,带来了延迟。
WebSocket协议 就是为了解决第二个瓶颈。
WebSocket协议 使用一个TCP连接进行双向通讯的机制,包括网络协议和API,以取代 HTTP协议中以轮询进行双向通讯的机制。
本质上来说,WebSocket协议是不限于 HTTP协议的,但是由于现存大量的HTTP基础设施,代理,过滤,身份认证等等,WebSocket协议 借用 HTTP 和 HTTPS 的端口。
为了实现 WebSocket通信,需要使用到 HTTP协议来完成,并且使用 HTTP请求报文中的 Upgrade首部字段,告知服务器通信协议发送变化。
通过 HTTP的一次请求/响应后,客户端和服务器之间接下来的通信将使用 WebSocket独立的数据帧。
另外附两篇讲解得非常详细的文章。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。