[openstack-dev] Zero MQ remove central broker. Architecture change.

Li Ma skywalker.nick at gmail.com
Tue Nov 18 08:40:57 UTC 2014


On 2014/11/17 18:44, Ilya Pekelny wrote:
> Hi, all!
>
> We want to discuss opportunity of implementation of the p-2-p 
> messaging model in oslo.messaging for ZeroMQ driver. Actual 
> architecture uses uncharacteristic single broker architecture model. 
> In this way we are ignoring the key 0MQ ideas. Lets describe our 
> message in quotes from ZeroMQ documentation:
>
>   * ZeroMQ has the core technical goals of simplicity and scalability,
>     the core social goal of gathering together the best and brightest
>     minds in distributed computing to build real, lasting solutions,
>     and the political goal of breaking the old hegemony of
>     centralization, as represented by most existing messaging systems
>     prior to ZeroMQ.
>   * The ZeroMQ Message Transport Protocol (ZMTP) is a transport layer
>     protocol for exchanging messages between two peers over a
>     connected transport layer such as TCP.
>   * The two peers agree on the version and security mechanism of the
>     connection by sending each other data and either continuing the
>     discussion, or closing the connection.
>   * The two peers handshake the security mechanism by exchanging zero
>     or more commands. If the security handshake is successful, the
>     peers continue the discussion, otherwise one or both peers closes
>     the connection.
>   * Each peer then sends the other metadata about the connection as a
>     final command. The peers may check the metadata and each peer
>     decides either to continue, or to close the connection.
>   * Each peer is then able to send the other messages. Either peer may
>     at any moment close the connection.
>
> From the current code docstring:
>
>     ZmqBaseReactor(ConsumerBase):
>         """A consumer class implementing a centralized casting broker 
> (PULL-PUSH).
Hi, Ilya, thanks for raising this topic. Inline you discussed about the 
ZeroMQ nature, but I still cannot find any directions to how to refactor 
or redesign the ZeroMQ driver for olso.messaging. :-< Could you provide 
more details about how you think of it?

> This approach is pretty unusual for ZeroMQ. Fortunately we have a bit 
> of raw developments around the problem. These changes can introduce 
> performance improvement. But to proof it we need to implement all new 
> features, at least at WIP status. So, I need to be sure that the 
> community doesn't avoid such of improvements.
For community works, AFAIK, we'd first initialize CI for ZeroMQ. After 
that, we can work together on how to improve performance, reliability 
and scalability of ZeroMQ driver.

cheers,
Li Ma
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20141118/b58cadad/attachment.html>


More information about the OpenStack-dev mailing list