James Mansion wrote:
Aidan Skinner wrote:
The Java client uses JMS for this to an extent, but we still need a
way of exposing AMQP specific things in ways that are as version
independent as possible (such as the mandatory flag).
I can see that there is value in reaching out to developers who have JMS
code or who
wish to retain JMS capability, *please* don't hobble Java users who want
the full-fat
qpid experience by making everything fit with JMS. Case in point: the
Java client for
postgres is annoyingly limited as soon as you want to receive async
notifications and
so on. I would much prefer the most efficient and direct mapping to
AMQP facilities
possible in each language, and an adapter to legacy APIs.
My employer (Red Hat) has a growing number of both internal users and
customers that are using Qpid with heterogeneous applications
implemented in 2 or 3 different languages. This makes them much more
Qpid centric than JMS centric, and I think this is certainly an
important class of user that we must consider going forward. As of now
though I don't see there being any huge technical issues in making both
JMS centric and Qpid centric users happy.
[snip]
Perhaps something to consider is trying to make the C/C++ client as
lightweight as
possible and having a reference SWIG wrapper. In this case I would
ideally look
for the client to be 'passive' and allow the host to do raw connection
establishment
and raw IO so it acts as a protocol engine and avoid issues of event
loop integration
and so on.
It's definitely on our roadmap to build a lightweight C client suitable
for SWIG. We're at the limit of what we can support in terms of
maintenance with native clients in C++, Java, python, ruby, and .net, so
we're definitely going to be looking to reduce the maintenance burden
with a common C implementation for the interpreted languages. This is
really a prerequisite to building out support in any of the remaining
popular languages (e.g. perl, PHP).
--Rafael
---------------------------------------------------------------------
Apache Qpid - AMQP Messaging Implementation
Project: http://qpid.apache.org
Use/Interact: mailto:[email protected]