Websocket 服务器繁忙几秒钟后,Vertex SocketJS断开连接

Websocket 服务器繁忙几秒钟后,Vertex SocketJS断开连接,websocket,sockjs,event-bus,vert.x,Websocket,Sockjs,Event Bus,Vert.x,需要一些帮助来了解断开连接发生的位置(SocketJS、Vertx)以及如何配置超时 我正在创建SockJSServer和eventBus桥。我观察到的问题是WebSocket连接频繁断开。查看websocket帧,我看到每5秒ping一次,每1/2秒心跳一次我配置的(似乎生效了)。然而,一旦心跳延迟超过5秒,就会出现信息c[3000,'走开']。正如所观察到的,它发生在服务器繁忙时(在单独的线程上执行其他操作) 我搜索了Vertx文档,查看了Vertx代码,发现很少有配置参数(在不同版本和文档

需要一些帮助来了解断开连接发生的位置(SocketJS、Vertx)以及如何配置超时

我正在创建SockJSServer和eventBus桥。我观察到的问题是WebSocket连接频繁断开。查看websocket帧,我看到每5秒ping一次,每1/2秒心跳一次我配置的(似乎生效了)。然而,一旦心跳延迟超过5秒,就会出现信息c[3000,'走开']。正如所观察到的,它发生在服务器繁忙时(在单独的线程上执行其他操作)

我搜索了Vertx文档,查看了Vertx代码,发现很少有配置参数(在不同版本和文档中,配置参数似乎有所不同)

可以肯定的是,我尝试了不同的配置,似乎没有任何影响。在这一点上,我想我已经到了死墙,需要一些帮助

Vertx版本2.1P3

服务器狙击手

final SockJSServer server = vertx.createSockJSServer(httpServer);
server.bridge(new JsonObject().putString("prefix", "/eventbus")
                    .putNumber("ping_interval", 120000)
                    .putNumber("session_timeout", 1200000)
                    .putNumber("heartbeat_period",500),
new JsonArray().addObject(new JsonObject()),
new JsonArray().addObject(new JsonObject()));
客户端代码:

var eventBus = new EventBus('//hostX:12001/eventbus');

当您收到SOCKET_IDLE事件时,您无法使用“true”参数完成该事件,因为它指示必须关闭套接字:


创建(vertx,handlerOptions).bridge(选项,事件->{
布尔结果=真;
开关(event.type()){
创建了一个案例:
LOGGER.info(“创建的套接字”);
打破
外壳插座U空闲:
结果=假;
返回;
外壳插座已关闭:
LOGGER.info(“插座关闭”);
打破
}
事件。完成(结果);
});

没有人遇到过同样的问题?
var eventBus = new EventBus('//hostX:12001/eventbus');