【问题标题】:Is it possible to deploy HTTP handlers from different verticles in Vert.x是否可以从 Vert.x 中的不同 Verticle 部署 HTTP 处理程序
【发布时间】:2017-12-09 23:03:34
【问题描述】:

摘自“面向 Java 开发人员使用 Eclipse Vert.x 进行异步编程的温和指南”I know 如何从单个 Verticle 在 Vert.x 中部署 HTTP 处理程序:

HttpServer server = vertx.createHttpServer();
Router router = Router.router(vertx);

router.get("/").handler(this::getRoot);
router.post("/").handler(this::postRoot);

server
  .requestHandler(router::accept)
  .listen(portNumber, ar -> { ... });

这一切都很好,但后来我需要在同一个类中定义 getRootpostRoot 方法(当然我可以在这里使用不同的类)并将这些函数“注册”到一个路由器中 单个,主要的“HTTP 编排垂直”。那些函数可以使用事件总线和调用其他verticles,但是注册阶段似乎是一个瓶颈:如果我需要处理几十/几百/几千个URL怎么办?此方法无法扩展。

有没有办法在 Vert.x 中的多个 Verticle 之间拆分 HTTP 路由器配置,这样我就可以在单独的类中实现我的逻辑而无需在其他地方注册它?

【问题讨论】:

    标签: java routes vert.x


    【解决方案1】:

    您不能将路由器配置拆分到不同的 Verticle。

    如果您有很多处理程序,请使用Sub-Routers

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-06-11
      • 2019-09-14
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多