当我启动20个新的Vertx实例以启动20个MQTT代理时,我在一个mqtt代理中遇到错误,无法启动。
启动20个实例的代码:
"com.abc.abc",
new DeploymentOptions().setWorkerPoolName("coffee-making-pool")
.setWorkerPoolSize(100).setInstances(20).setWorker(true));```
引发了exceptionCaught()事件,该事件到达管道的尾部。这通常意味着管道中的最后一个处理程序未处理异常 java.lang.Exception:错误消息类型io.netty.buffer.PooledUnsafeDirectByteBuf位于io.vertx.mqtt.impl.MqttServerConnection.handleMessage(MqttServerConnection.java:182)〜[vertx-mqtt-3.6.2.jar:3.6.2 ],位于io.vertx.mqtt.impl.MqttServerImpl.lambda $ null $ 3(MqttServerImpl.java:94)〜[vertx-mqtt-3.6.2.jar:3.6.2],位于io.vertx.core.streams.impl。 InboundBuffer.handleEvent(InboundBuffer.java:225)〜[vertx-core-3.6.2.jar:3.6.2] at io.vertx.core.streams.impl.InboundBuffer.write(InboundBuffer.java:123)〜[vertx -core-3.6.2.jar:3.6.2],位于io.vertx.core.net.impl.NetSocketImpl.handleMessage(NetSocketImpl.java:370)〜[vertx-core-3.6.2.jar:3.6.2]在io.vertx.core.net.impl.ConnectionBase.handleRead(ConnectionBase.java:386)〜[vertx-core-3.6.2.jar:3.6.2]在io.vertx.core.impl.ContextImpl.executeTask( ContextImpl.java:320)〜[vertx-core-3.6.2.jar:3.6.2]在io.vertx.core.impl.WorkerContext.lambda $ wrapTask $ 0(WorkerContext.java:34)〜[vertx-core- 3.6.2.jar:3.6.2]在io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)〜[vert x-core-3.6.2.jar:3.6.2],位于java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)〜[?:1.8.0_192],位于java.util.concurrent.ThreadPoolExecutor $ Worker。在io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)处运行(ThreadPoolExecutor.java:624)〜[?:1.8.0_192] [netty-common-4.1.30.Final.jar:4.1。 30.Final] at java.lang.Thread.run(Thread.java:748)[?:1.8.0_192]```