简介:先简单了解下WebSocket 原理,日后的使用中再进一步深入研究~
一、什么是WebSocket
WebSocket 是HTML5 开始提供的一种在单个TCP 连接上进行全双工通讯的协议,其最大特点就是,服务器可以主动向客户端推送信息,客户端也可以主动向服务器发送信息,属于双向平等对话。更深层次的解释就是WebSocket 是应用层第七层上的一个应用层协议,它必须依赖 HTTP 协议进行一次握手 ,握手成功后,数据就直接从 TCP 通道传输,与 HTTP 无关了。也就是说WebSocket 分为握手和数据传输阶段,即进行了HTTP握手 + 双工的TCP连接,当然还有关闭连接。
二、WebSocket 应用场景
1、直播发弹幕、身份认证。
2、社交订阅。
3、多玩家游戏。
4、协通编辑/编程。
5、点击流数据。
6、股票基金报价。
7、体育实况更新。
8、多媒体聊天。
9、基于位置的应用。
10、在线教育等。
三、WebSocket 特点
-
建立在 TCP 协议之上,服务器端的实现比较容易。
-
与 HTTP 协议有着良好的兼容性。默认端口也是80和443,并且握手阶段采用 HTTP 协议,因此握手时不容易屏蔽,能通过各种 HTTP 代理服务器。
-
数据格式比较轻量,性能开销小,通信高效。