我想在我的Web服务器上运行多个非簇化的顶点。每个顶点由一个单独的进程/命令行启动,并为相同主机和相同端口创建自己的HTTP服务器( vertx.createHttpServer )。有独特的路线。但是,这似乎不起作用,因为在启动一个顶点后,所有其他顶点都引发BindException“ 地址已在使用”。
作为Vert.x的新手,我只能想到两种方法来通过:
这两种方法都会迫使我重写大部分的顶点。
还有另一种方法来解决此多服务器问题吗?
答案 0 :(得分:1)
每个顶点由单独的进程/命令行启动并创建 他自己的HTTP服务器(vertx.createHttpServer),用于相同的主机和 同一端口
TCP连接仅允许单个进程在同一主机上的同一端口上侦听。有一些解决方法(请参阅对this question的答复),但我不确定这样做是否是最佳解决方案。
...用于同一主机和同一端口,具有唯一的路由
Vertx-Web提供了许多路由请求的方法。我最近使用的一种这样的方法是sub-router,它可能是您可行的解决方案。您可以配置一个“主”路由器,以针对每个所需的“唯一路由”将请求路由到另一个路由器。