From what I can see this far, qpid::client is a low-level API directly
using AMQP style, while qpid::messaging is a higher level API which
tries to hide AMQP. Some of the differences I found (maybe not right,
but don't have any better):
- messaging uses terms "queue" and "topic", where "topic" is not a topic
exchange, but these are used as in Java JMS
- messaging therefore has to translate there terms to AMQP terms, which
could be fine-tuned using address strings, but these are not too
documented as I can see
- messaging has a nicer receiver API, and has non-blocking
Receiver.fetch() for retrieving messages. Maybe it uses a separate
thread, but that is not apparent from the docs. Also, when I try to
support it with a timeout, it never returns.
- client is more straight-forward, you can use the well-known AMQP style
methods to declare exchanges, queues, bindings.
- with client, I'm not sure if non-blocking message polling is possible,
maybe you need a custom thread for that.
(above refers to C++ API)
QPID seems to be in active development, maybe that is why documentation
seems to be lagging behind what actually is available. Possibly using
the client API is on the safer side right now.
Robin
2010.09.25. 8:48 keltezéssel, [email protected] írta:
I see there are some examples in qpidc-0.6. Some examples use the API in
qpid/client while some examples use qpid/messaging. I wander what the
different between them.
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]