You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by Jonathan Robie <jo...@redhat.com> on 2009/09/11 20:34:06 UTC

Configuration with the new messaging client API

The new messaging client API is designed to hide the details of specific 
AMQP versions.  This causes a certain impedance mismatch with the 
maangement tools and the existing APIs, which are centered around the 
AMQP 0-10 model, with exchanges, bindings, queues, etc. To use the new 
API, a programmer need not think of exchanges at all, but anyone who 
uses the management tools sees these exchanges and needs to understand 
the mappings.

This made me think about the way we use Java JMS with AMQP 0-10, even 
though the models are quite different.

Should the new API be used in the same way as the Java JMS client? We 
could provide a way to use an existing Java JMS properties file in the 
client for each language (I assume other languages would ignore the 
java.naming.factory.initial ).

Or should we provide a separate configuration API for each version of 
AMQP that we support, since the semantics used for configuration are 
significantly different, at least between 0-10 and 1.0? The new API 
could provide a set of messaging semantics that covers everything except 
for configuration and is independent of the AMQP version, and there 
could be a separate API for configuring the plumbing in each version of 
AMQP.

Obviously, we could do both. And of course, people will also use the 
management tools to configure their brokers.

If we separate configuration from messaging per se, the high level API 
can be nicely independent of the bumps and wrinkles of a given AMQP 
version, and the configuration APIs can give full control. I think 
that's what we should want.

Jonathan

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: Configuration with the new messaging client API

Posted by Carl Trieloff <cc...@redhat.com>.
Joshua Kramer wrote:
>
>> and the existing APIs, which are centered around the AMQP 0-10 model, 
>> with exchanges, bindings, queues, etc. To use the new API, a 
>> programmer need not think of exchanges at all, but anyone who uses 
>> the management tools sees
>
> Nice timing.  :)  I have a Linux Journal article going to press today, 
> talking all about QPid and its Exchanges, Bindings, and Queues... and 
> using the Python client to illustrate the behavior of each.  It will 
> appear in the November issue of LJ.  Will this information be of any 
> use after the change noted in your email?
>
yes, as the new API is one layer up, so anything written today will 
still work :-)

Carl.

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org


Re: Configuration with the new messaging client API

Posted by Joshua Kramer <jo...@globalherald.net>.
> and the existing APIs, which are centered around the AMQP 0-10 model, with 
> exchanges, bindings, queues, etc. To use the new API, a programmer need not 
> think of exchanges at all, but anyone who uses the management tools sees

Nice timing.  :)  I have a Linux Journal article going to press today, 
talking all about QPid and its Exchanges, Bindings, and Queues... and 
using the Python client to illustrate the behavior of each.  It will 
appear in the November issue of LJ.  Will this information be of any use 
after the change noted in your email?

-- 

-----
http://www.globalherald.net/jb01
GlobalHerald.NET, the Smarter Social Network! (tm)

---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project:      http://qpid.apache.org
Use/Interact: mailto:dev-subscribe@qpid.apache.org