我将调用ESB,因此我想为该代码创建一个服务代理。
由于几个Verticle会很常见,因为代码在每次ESB调用之间基本一致,我将创建特定的其他服务代理。
因此,要查找用户的未结订单,OrderVerticle将在事件总线上发出请求,然后OpenOrderService将输入ESBService的请求。
所以,我的问题是我将所有东西都固定化了,所以每个Verticle都在它自己的容器中。如何将事件总线代码停靠?我应该只有一个docker容器,其中包含用于事件总线的所有项目吗?
这似乎是一个坏主意,那么处理这个问题的正确方法是什么?
另一个想法是将每个Verticle的所有服务代理项目放入该Verticle的docker容器中,但这似乎也是错误的。
所以,尝试理解这样做的正确方法,因为简单的方法,但错误的是创建新的Verticle而不是serviceproxy,然后只需从GRPC
或RPC
调用OrderVerticle
到OpenOrderVerticle
,从那里到ESBVerticle
。
答案 0 :(得分:0)
Vert.x可以在群集模式下启动。在这种情况下,EventBus将跨越多个节点(在容器中运行或不运行)。
所以你可以在节点1上部署Verticle A和B; C,D和E一个节点2.就好像它们都部署在同一个JVM上一样。
以下是受支持的群集管理器列表:http://vertx.io/docs/#clustering