【发布时间】:2020-10-13 15:45:34
【问题描述】:
我有一个在 k8 集群上运行的基于 vertx 的 java 微服务。安装新 pod 时,在初始化期间我会间歇性地收到此异常。将 vertx core 和 vertx web 版本从 3.5.3 升级到 3.9.3,但没有帮助。在出现这些异常后,该应用程序仍然可以正常运行。我想知道造成这种情况的根本原因。
这是在初始化期间发生的。这是我在初始化期间所做的事情
-
部署verticle A: vertx.deployVerticle(new Verticle_A(), serverOpts,this::deploymentHandler);
-
部署垂直B: vertx.deployVerticle(new Verticle_B(), serverOpts,this::deploymentHandler);
-
在我正在做的每个verticle中:
httpServer = vertx.createHttpServer(serverOptions); httpServer.requestHandler(req -> { LOG.trace("Request hit the server " + req.absoluteURI()); }); httpServer.listen(Constants.PORT, (result) -> { if (result.succeeded()) { this.httpServer = result.result(); LOG.info("Successfully started server on port: " + Constants.PORT); } else { LOG.error("Failed to start server: ", result.cause()); } });
两个verticles部署成功,Http服务器启动
我是 vertx 和 k8s 的新手,因此我们将不胜感激。
SEVERE: Unhandled exception
java.util.NoSuchElementException: handler
at io.netty.channel.DefaultChannelPipeline.getContextOrDie(DefaultChannelPipeline.java:1073)
at io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:248)
at io.netty.channel.DefaultChannelPipeline.addBefore(DefaultChannelPipeline.java:237)
at io.vertx.core.http.impl.HttpHandlers.initializeWebsocketExtensions(HttpHandlers.java:92)
at io.vertx.core.http.impl.HttpHandlers.handle(HttpHandlers.java:69)
at io.vertx.core.http.impl.HttpHandlers.handle(HttpHandlers.java:34)
at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:366)
at io.vertx.core.impl.WorkerContext.lambda$wrapTask$0(WorkerContext.java:35)
at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:830)
Oct 12, 2020 11:43:28 PM io.vertx.core.impl.ContextImpl
SEVERE: Unhandled exception
java.lang.NullPointerException
at io.vertx.core.http.impl.Http1xServerConnection.handleMessage(Http1xServerConnection.java:136)
at io.vertx.core.impl.ContextImpl.executeTask(ContextImpl.java:366)
at io.vertx.core.impl.WorkerContext.lambda$wrapTask$0(WorkerContext.java:35)
at io.vertx.core.impl.TaskQueue.run(TaskQueue.java:76)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30)
at java.base/java.lang.Thread.run(Thread.java:830)
【问题讨论】:
标签: kubernetes nullpointerexception vert.x