一、WebSocket简介
1、WebSocke是什么?
WebSocket 是HTML5开始提供的一种在单个TCP连接上进行全双工通信的协议。
全双工和半双工:
● 全双工:全双工(Full Duplex)是允许数据在两个方向上同时传输。
● 半双工:半双工(Half Duplex)是允许数据在两个方向上传输,但是同一个时间段内只允许一个方向上传输。
WebSocket通信协议于2011年被IETF定为标准RFC 6455,并由RFC7936补充规范。WebSocket API也被W3C定为标准。
2、为什么需要WebSocke?
我们已经有了 HTTP 协议,为什么还需要另一个协议?
● 因为http 通信只能由客户端发起,服务器返回查询结果,HTTP 协议做不到服务器主动向客户端推送信息,服务器有连续的状态变化,客户端要获知就非常麻烦。
● 我们只能使用轮询:每隔一段时候,就发出一个询问,了解服务器有没有新的信息。最典型的场景就是聊天室。
● 轮询的效率低,非常浪费资源(因为必须不停连接,或者 HTTP 连接始终打开);
【【【【 引申HTTP协议 】】】】:
HTTP协议:
●【概念】:HTTP(Hypertext Transfer Protocol,)超文本传输协议,通过浏览器和服务器进行数据交互,进行超文本(文本、图片、视频等)传输的规定。也就是说,http协议规定了超文本传输所要遵守的规则。
●【特点】:☆★无状态★☆:HTTP协议是无状态的,