基于java的简单案例已上传到码云,欢迎大家fork https://gitee.com/njitzyd/JavaDemoCollection
websocket是一个网络协议。
传统的基于浏览器的应用,比如网页游戏,经常需要和服务端进行通信,免不了要开多个http请求,来主动向服务器查询最新的信息,但是对于客户端的更新操作却又得发起新的请求,这样带来一系列的问题:
服务端对于同一个客户端得提供一些不同的TCP连接,一个用于发送信息给客户端,一个用于处理每个送给服务端的信息
通信协议本身是会造成通信的高开销,比如每个客户端到服务端的Http请求都会携带头部信息
对于客户端要测试来讲,客户端的同学必须要维持传出连接和传入连接的映射关系
websocket为了解决上述问题,从而出现,它主要基于tcp连接的方式来实现双向通信,将原始的TCP尽可能的暴漏给浏览器端。