当前位置: 首页 > 知识库问答 >
问题:

Websocket无原因断开与1006错误的连接

常嘉平
2023-03-14

我正在我的网络游戏中记录断开连接。似乎75%的会话使用代码1001断开连接(正常),25%的会话使用代码1006断开连接(错误)。https://www.rfc-editor.org/rfc/rfc6455

有时出于错误原因,我会看到以下文字:

CloudFlare WebSocket代理重新启动

但他说,1006次断开中的大多数根本没有给出任何理由。球员们无缘无故地断绝了联系。这通常发生在玩家积极玩游戏的5-30分钟。

我的设置有这些:

  • Node.js
  • Express.js
  • 云火炬
  • 数字海洋
  • Docker
  • https://github.com/websockets/ws
  • SSL
  • nginx超时=3600s
  • ping/Pong isAlive=30

我的问题是:

  1. 如何更好地调试此问题

共有1个答案

齐学文
2023-03-14

出现此特定错误的原因是Cloudflare更新了其SSL、防火墙、Nginx和物理服务器的软件或配置

在他们的系统中,几乎所有被更新的堆栈都会踢出你的WebSocket。您有两种解决方案:

  1. WebSocket不使用Cloudflare
 类似资料:
  • 每次我的WebSocket向我的客户机发送消息时,客户机都会为连接调用onClose-function,而不会接收到消息。 错误为1006-Websocket读取EOF 我知道这个答案得到websockets关闭的原因,所以错误是由浏览器本地的,但我使用的是Firefox(最新的)和html和javascript代码没有什么特别的。 直到服务器调用session.getRemote()。SendS

  • 问题内容: 我正在使用HAProxy在子域上将请求发送到node.js应用程序。 我无法使WebSockets正常工作。到目前为止,我只能使客户端建立WebSocket连接,但是之后很快就会断开连接。 我在ubuntu上。 我一直在使用的各种版本和。客户端是Safari或Chrome的最新版本。HAProxy版本是1.4.8 这是我的HAProxy.cfg 我已经拖网和邮件列表,但无法获得任何建议

  • 我的设置是cloudflare- 这是nginx为websocket连接记录的内容:162.158。75.125--[29/Oct/2016:00:01:47 0000]“GET/HTTP/1.1”101 1047-“Mozilla/5.0(X11;Linux x86_64)AppleWebKit/537.36(KHTML,如Gecko)Chrome/53.0.2785.143 Safari/53

  • 在Websphere Application Sever8.5和RAD 8.5.1上尝试配置JMS队列连接工厂/激活规范时,我得到以下错误:

  • 问题内容: 我使用boto3连接到AWS的代码遇到错误。该错误仅在昨天下午开始,在上一次我没有收到错误和第一次我得到错误之间,我看不到任何变化。 错误是: 在.aws / config中,我有: 这是我所知道的: 在另一台机器上使用相同的AWS凭证和配置,我看不到错误。 在同一台计算机上使用不同的AWS凭证和配置,我确实看到了错误。 我是我们小组中唯一在任何计算机上出现任何凭据问题的人。 我不认为

  • 我使用的是spring Stomp Websocket框架。我已经将websocket配置为使用更大的(从服务器传出?)如http://stackoverflow.com/questions/34343235/stomp-spring-web-socket-message-expers-size-limit中所述的消息,但当我使用有效负载大于64 Kb的“send”命令(向服务器传入消息)时,似乎