关于websocket长链接的使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于websocket长链接的使用相关的知识,希望对你有一定的参考价值。

接手的项目中使用了websocket长链接,实时向页面推送消息,在效率上是优于ajax轮训的,但是当前接受到一个新的需求,需要满足客户可以刷新页面的需求!
在我的映象中,websocket是一直保持通信的,如果刷新或者关闭页面的话,控制台会报错!

如果是你们,接到这个需求会怎么做?

我的代码websocket是结合在线程中使用的,迫于无奈的情况下,我使用了this.sleep()

我在刷新页面的时候从线程池拿到当前线程,唤醒线程,并进入到线程继续执行,然后此时我猜测可能是页面刷新速度跟不上代码的执行速度,跟不上websocket的将信息向页面传递的速度,那么此时,websocket在传递信息时,就会找不到接收的页面,进而报错,所以我使用this.sleep(),等待页面刷新好之后,再进行代码的执行,使得通信的畅通无阻


以上是关于关于websocket长链接的使用的主要内容,如果未能解决你的问题,请参考以下文章

websocket协议握手详解

HTML5 - Websocket

015_NGINX作为WebSocket Proxy的设置

实现单台测试机6万websocket长连接

实现单台测试机6万websocket长连接

利用websocket实现聊天小应用