本文为简单入门,主要介绍了什么是WebSocket以及其优点。
一、什么是WebSocket
WebSocket的出现使得浏览器具备了实时双向通讯的能力。WebSocket是HTML5开始提供的一种浏览器与服务器进行全双工通讯的网络技术,属于应用层协议,它是基于TCP传输协议,并复用HTTP的握手通道。简言之,WebSocket是应用层协议,主要用来浏览器和服务器进行通讯,它是基于TCP协议并且复用了HTTP的握手通道。
小拓展:
上文还提到了全双工,这里就来说一说经常看到的半双工和全双工。首先,双工可以理解成双向的通道,半双工的话就是类似于一条很窄的路,一次只能有一辆车来或者去,如果此时有两辆车a和b相对,a从起点开到终点,b从终点开到起点,只有等a开完这条路后b才能开始开。全双工就是a和b能够同时出发,a从起点开到终点,b从终点开到起点,两者同时进行。
二、使用WebSocket有什么好处
相对于传统的HTTP,它支持双向通讯、更灵活、全双工的方式也使得它更高效、实时性更强、且可拓展性更好,并且能更好地支持二进制。较小的控制开销,进行数据交互时,WebSocket的数据包头部较小,而HTTP协议每次通讯都需要携带完整的头部。它还支持拓展,它自身定义了拓展,用户可以拓展协议,或者实现自定义的子协议(比如自定义压缩算法等)。