What implementation of event bus Vert.x use under the hood?

545 views
Skip to first unread message

Виталий Ромашкин

unread,
Sep 2, 2017, 5:24:18 PM9/2/17
to vert.x
I really would like to know more details about event bus implementation inside Vert.x.
here http://vertx.io/docs/vertx-core/java/#event_bus I found just a general description.
Is it something similar to Apache Kafka or some Message Broker or something completely different?


Message has been deleted

Виталий Ромашкин

unread,
Sep 2, 2017, 7:09:23 PM9/2/17
to vert.x
And one more interesting thing for me.
When I run vertx on the one JVM it creates single one event bus inside this process, right?
When I run vertx in a clustered mode it creates single one event bus but shared accross all processes(and even physical nodes), right? 
If so event bus should be runned as a standalone server then? How does it possible,

воскресенье, 3 сентября 2017 г., 0:24:18 UTC+3 пользователь Виталий Ромашкин написал:

Grant Haywood

unread,
Sep 3, 2017, 2:52:30 AM9/3/17
to ve...@googlegroups.com
Vert.x implements its own "eventbus". In clustered mode the cluster manager component (there are several available) manages the subscriptions, but the Vert.x code itself sets up the connections to pass messages between nodes using an internal implementation.

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+unsubscribe@googlegroups.com.
Visit this group at https://groups.google.com/group/vertx.
To view this discussion on the web, visit https://groups.google.com/d/msgid/vertx/4010d951-9ecf-4c28-8e63-5497120754a9%40googlegroups.com.

For more options, visit https://groups.google.com/d/optout.

clement escoffier

unread,
Sep 4, 2017, 1:41:54 AM9/4/17
to ve...@googlegroups.com
Hi,

As Grant says, there is no broker in the Vert.x event bus. The node registers itself into a clustered map (managed by the cluster manager). Then, Vert.x uses direct TCP connections between the nodes to send and receive the messages.

Clement

Виталий Ромашкин

unread,
Sep 4, 2017, 5:29:14 PM9/4/17
to vert.x
Hi guys, thanks for your answers. Clement, it would be greate if you could add such more detailed tech info into docs.
Does event bus use Netty? All TCP-connections asynchronius and non-blocking?

понедельник, 4 сентября 2017 г., 8:41:54 UTC+3 пользователь clement escoffier написал:
Hi,

As Grant says, there is no broker in the Vert.x event bus. The node registers itself into a clustered map (managed by the cluster manager). Then, Vert.x uses direct TCP connections between the nodes to send and receive the messages.

Clement
2017-09-03 8:52 GMT+02:00 Grant Haywood <mrgrant...@gmail.com>:
Vert.x implements its own "eventbus". In clustered mode the cluster manager component (there are several available) manages the subscriptions, but the Vert.x code itself sets up the connections to pass messages between nodes using an internal implementation.
On Sat, Sep 2, 2017 at 4:09 PM, Виталий Ромашкин <rvita...@gmail.com> wrote:
And one more interesting thing for me.
When I run vertx on the one JVM it creates single one event bus inside this process, right?
When I run vertx in a clustered mode it creates single one event bus but shared accross all processes(and even physical nodes), right? 
If so event bus should be runned as a standalone server then? How does it possible,

воскресенье, 3 сентября 2017 г., 0:24:18 UTC+3 пользователь Виталий Ромашкин написал:
I really would like to know more details about event bus implementation inside Vert.x.
here http://vertx.io/docs/vertx-core/java/#event_bus I found just a general description.
Is it something similar to Apache Kafka or some Message Broker or something completely different?


--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "vert.x" group.
To unsubscribe from this group and stop receiving emails from it, send an email to vertx+un...@googlegroups.com.

Julien Viet

unread,
Sep 4, 2017, 6:48:19 PM9/4/17
to ve...@googlegroups.com
the implementation is pretty simple and you can look at ClusteredEventBus.

the ClusterManager is responsible to handle the topology as a Map of event-bus-address to List<Server>, the ClusteredEventBus uses Vert.x NetServer and NetClient to create connection between peers.

Reply all
Reply to author
Forward
0 new messages