SpringBoot
系列之@ServerEndpoint
方式开发WebSocket
应用。在实时的数据推送方面,经常会使用WebSocket
或者MQTT
来实现,WebSocket
是一种不错的方案,只需要建立连接,服务端和客户端就可以进行双向的数据通信。很多网站的客户聊天,也经常使用WebSocket技术来实现。
WebSocket
是一种建立在TCP协议上的一种网络协议,与Http协议类似,端口都是80
或者443
,协议标识符是ws
、如果是加密安全的就是wss
,这个和http/https
有点类似。WebSocket 连接以 HTTP 请求/响应握手开始,连接成功后,客户端可以向服务端发送消息,反之亦可,WebSocket协议支持二进制数据和文本字符串的传输。因为客户端和服务端之间只有一条TCP通信连接,以后所有的请求都使用这条连接,所以Websocket也是属于长连接。下面给出WebSocket通讯示意图:
WebSocket官网给出的HTTP和WebSocket的对比图:https://websocket.org/guides/road