[zeromq-dev] Chat example not working

Martin Sustrik sustrik at 250bpm.com
Tue Jan 12 08:26:47 CET 2010


Hi Marcel,

>         BTW. did you have a particular reason to let zmq_forwarder,
>         zmq_queue and zmq_streamer be separate executables? Looking at
>         their similarity, doesn't it make more sense to have a single
>         executable that switches on the root element of the
>         configuration xml file to select forwarding, queueing or
>         streaming behavior?
> 
> 
>     Well, from the developer's point of view there's no point in keeping
>     the applications separate. The code is almost the same.
> 
>     However, from the user's perspective it makes sense to have
>     different executables to perform different tasks IMO. As a user,
>     feel free to argue about the point though.
> 
> 
> To name one thing, in the current situation the behavior specification 
> is redundant: you both have to select the proper executable and specify 
> the corresponding root element in the configuration file. If there were 
> to be a single executable, this could be easily extended to also allow a 
> single process to have multiple threads each listening on different 
> ports with different behavior, all governed by a single configuration 
> file. Not sure if anyone would want that, but right now you explicitly 
> prohibit such a thing.

Actually, you are right in a way.

Developers who have been working with traditional messaging systems 
before are accustomed to have a component called "message broker", an 
executable that handles all the message feeds in the distributed system. 
Such a component is an obvious performance bottleneck, but that's not 
the point here. The point is that by merging 0MQ devices into a single 
executable people would get a warm fuzzy feeling of using something they 
know and understand.

Any volunteers out there for merging 0MQ devices into a single 
zmq_broker component?

Martin



More information about the zeromq-dev mailing list