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

带有WebSocket服务器的ping客户端

洪彬
2023-03-14

我有一个来自http工具包的Websocket连接(Clojure,它工作得很好)。我从客户端发送ping以确保我们仍然保持连接,并且在那里一切正常。我的问题是,在这种情况下,人们是否会从服务器ping客户端?

我试图设置一些东西,如果我没有得到响应,就从服务器上删除频道,但是设置定时进程和改变状态来跟踪乒乓周期不是很方便,所以它变得有点难看。然后我就想,服务器能处理几十万个同时连接,我是不是就应该不担心几个断线?人们通常如何处理(或不处理)这一点?

共有1个答案

何昆
2023-03-14

WebSocket协议本身有心脏跳动来保持连接的活力。如果你想要一个额外的层,你可以使用STOMP协议,它协调客户端/服务器之间的心跳。

据我所知,JVM的STOMP实现是Stampy。JS也有一个,stompjs。注意:这些lib的heartbeat实现不同,我认为Stampy实现是不正确的。你得自己滚。

 类似资料:
  • 我有一个react本机应用程序,它使用与。NET Core2.1通信的signalR。 套接字连接没有任何错误。一切都很好。但是服务器不能响应客户端的ping消息,并返回504给客户端。当返回504时,客户端的连接关闭。在hubconnection.onclose()处理。然后客户端需要重新连接。 proxy_read_timeout可以设置为高毫秒。但很乱。 所以我不能在客户机上有效地使用kee

  • 问题内容: 我正在尝试在Java中的服务器和JavaScript客户端之间建立连接,但在客户端出现此错误: WebSocket与“ ws://127.0.0.1:4444 /”的连接失败:在收到握手响应之前,连接已关闭 由于可能从未调用该函数,因此它可能保持在OPENNING状态。该不会被调用。 有人可以让我知道这里出了什么问题吗? 服务器 服务器线程 游戏协议 客户 问题答案: 首先,您的两个代

  • 你好,我写了一个非常简单的ZMQ服务器和客户端应用程序。它在我的本地机器上运行良好,如果我在AWS(同一个安全组)内运行这两个应用程序,它也运行良好。我已经尝试在AWS安全组中打开正确的端口(入站和出站)。我甚至向任何端口/地址上的所有流量开放了它们。但是我在客户端上收不到发布的消息。 我的客户端代码如下所示 我的服务器端代码如下所示 在客户端应用程序命令行中,我尝试传递正确格式为“TCP://p

  • 我有一个带sokjs套接字的节点应用程序。 一些HTML/JS客户端使用stomp over sock JS,但我不明白订阅是如何工作的: 客户端已连接,事件已记录,但范围为$scope。从不打电话通知。如何配置主题订阅? 编辑: 请注意,我一定清楚。 我使用sockjs模块作为websocket服务器。 没有太多的配置:

  • 是否可以使用ActiveMQ Artemis客户机库(1.5.x或2.x)连接到HornetQ服务器?

  • 问题内容: 我在Node.js中有一个使用Expressjs和Handlebars作为模板引擎的应用程序。 Expressjs使用布局,然后呈现视图。布局(layout.hbs)如下所示: 在当您访问路径被替换服务器端的node.js内。例如: 将标记替换为index.hbs的内容。 现在,在客户端上,我正在使用Backbone.js,并希望对通过Backbone控制的视图使用Handlebars