2017-09-26 134 views
1

我想弄清楚從Apache Camel路由發送消息到外部Vert.x事件總線的最佳方式。Vertx和駱駝集成

我已經看過駱駝頂點庫和vertx-camel-bridge,但是這些庫似乎用於在同一個JVM中運行的Camel和Vert.x之間的通信,我沒有看到任何示例駱駝和Vert.x分開運行。

我的假設是否正確? ActiveMQ會成爲Vertx和Camel之間的橋樑嗎?

回答

2

Vert.x事件總線可以聚集在一起。在一個節點(A)上,可以有一個純Vert.x應用程序發送消息。在另一個節點(B)上,您可以將您的Camel應用程序與Vert.x Camel橋連接。

在節點A:

vertx.eventBus().send("eventbus-address", "a message"); 

在節點B:

CamelContext camel = new DefaultCamelContext(); 
OutboundMapping outbound = OutboundMapping 
    .fromVertx("eventbus-address") 
    .toCamel("stream:out"); 
CamelBridge.create(vertx, new CamelBridgeOptions(camel) 
    .addOutboundMapping(outbound)).start();