[zeromq-dev] Integration into fabric3

Joachim Bäck jbaeck at gmx.net
Mon Mar 21 17:41:54 CET 2011

Hi all.

I currently work on integrating zmq into fabric3 (www.fabric3.org) which 
is an SCA runtime implemented in Java.
There is a concept of a Channel (basically pub/sub) in sca and one can 
created different bindings for the channel to send events. The current 
implementation is based on JMS and my early tests show that with zmq i 
get a tremendous performance gain.
I attached 2 drawings showing the current Implementation and would like 
to get your opinion if this is the correct way to go.

Per runtime/channel (basically a jvm) a corresponding ZMQ.PUB socket is 
created. I know that it would be possible to use a single socket and 
simply add the channel name to each message - which the ZMQ.SUB sockets 
would use to subscribe to. I thought it makes sense to reduce network 
traffic if I would create a socket for each socket.

Again per runtime/channel (where sonsumers exist for) a ZMQ.SUB socket 
is created. Since I know that only messages for a single channel are 
sent over the PUB socket I subscribe to "". The messages get forwarded 
to an inproc PUB socket and for each consumer a MessageHandler is 
created. The MessageHandler connects to the inproc PUB socket and then 
calls the corresponding code inside fabric3 to dispatch the event.

I would really like to get your opinion and hope that I dont use zmq in 
a wrong way.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20110321/c96ced51/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: drawings.zip
Type: application/zip
Size: 11427 bytes
Desc: not available
URL: <https://lists.zeromq.org/pipermail/zeromq-dev/attachments/20110321/c96ced51/attachment.zip>

More information about the zeromq-dev mailing list