On 09/22/2014 02:35 PM, Gordon Sim wrote: > On 09/22/2014 10:56 AM, Flavio Percoco wrote: >> What I meant is that oslo.messaging is an rpc library and it depends on >> few very specific message delivery patterns that are somehow tight/based >> on AMQP semantics. > > RPC at it's core is the request-response pattern which is directly > supported by many messaging technologies and implementable over almost > any form of communication (it's mostly just convention for addressing). > > In addition the oslo.messaging model offers the ability to invoke on one > of a group of servers, which is the task-queue pattern and again is very > general. > > One-way messages are also supported either unicast (to a specific > server) or broadcast (to all servers in a group). > > I don't think any of these patterns are in any way tightly bound or > specific to AMQP. > > In fact Zaqar offers (mostly) the same patterns (there is no way to > indicate the 'address' to reply to defined by the spec itself, but that > could be easily added). > >> Implementing Zaqar's API in oslo.messaging would be >> like trying to add an AMQP driver to Zaqar. > > I don't think it would be. AMQP and Zaqar are wire protocols offering > very similar levels of abstraction (sending, consuming, browsing, > acknowledging messages). By contrast oslo.messaging is a language level > API, generally at a slightly higher level of abstraction, mapping method > invocation to particular messaging patterns between processes. > > Implementing Zaqar's model over oslo.messaging would be like > implementing AMQP's model over oslo.messaging, i.e. reimplementing a > general purpose message-oriented abstraction on top of an API intended > to hide such a model behind message invocation. Though technically > possible it seems a little pointless (and I don't think anyone is > suggesting otherwise).
I was referring to the messaging/storage technologies both projects target, which IMHO, are different. > > Zaqar drivers are really providing different implementations of > (distributed) message storage. AMQP (and I'm talking primarily about > version 1.0) is not intended for that purpose. It's intended to control > the transfer of messages between processes. Exposing AMQP as an > alternative interface for publishing/receiving/consuming messages > through Zaqar on the other hand would be simple. Somehow, I keep failing at explaining things here. The point is that IMHO, it doesn't make sense to merge both projects because they both have different goals and purposes. Cheers, Flavio -- @flaper87 Flavio Percoco _______________________________________________ OpenStack-dev mailing list OpenStack-dev@lists.openstack.org http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev