You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by motic <mo...@gmail.com> on 2016/01/28 09:51:12 UTC

ActiveMQ and AMQP (Qpid/RabbitMQ)

Hi all,
I'm new to this subject - so I hope my question is indeed relevant to this
forum.

I'm now starting to work on a new java application that is using wildfly10
as it's application server.
This application (and server) will run an embedded device and not on PC.
The Linux image I'm using is created by Yocto (it's not a stnadard
Debian/Ubunto distribution).
So this is the java part..

My device will also run some device-drivers (controling the low-level HW)
that will be written in C/C++ and I would like to use JMS for reliable
message exchange between the Java application and the C based device
drivers. Since wildfly can support ActiveMQ I would like to use ActiveMQ as
the message broker, the problem is that my Yocto image does not have support
(or avaiable receipe) for it. The only brokers supported by Yocto are Qpid
and RabbitMQ. So my question is whether there is an issue with using
Qpid/RabittMQ clients (C++ API) working on AMQP protocol to communicate with
the ActiveMQ broker on the Java side ?

I hope my question is clear and make sense :) ..

Thanks in advance, Motic.



--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-and-AMQP-Qpid-RabbitMQ-tp4706562.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: ActiveMQ and AMQP (Qpid/RabbitMQ)

Posted by motic <mo...@gmail.com>.
Thanks a lot Tim!
This is very helpful - I will try going with the CMS.





--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-and-AMQP-Qpid-RabbitMQ-tp4706562p4706725.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: ActiveMQ and AMQP (Qpid/RabbitMQ)

Posted by Tim Bain <tb...@alumni.duke.edu>.
Yes, a single broker can support many clients, so once you have one (that
will be online whenever any of the clients will want to connect to it), you
don't have to have one for the clients.  There are sometimes reasons that
people would want to do that (primarily because it decouples the client
from the standalone broker if the standalone broker is sometimes
unavailable, or if the network link to the standalone broker is
high-latency), but it's absolutely not required (or typical), and nothing
you've described sounds like you would have those needs.

The CMS libraries are absolutely an option for a C++ client; they'd be the
first option I considered for C++ code with an ActiveMQ broker, and I'd
pick them over the AMQP approach you originally described if you can make
them work with Yocto.  And yes, in all languages, if you're a client
application, you simply include the ActiveMQ libraries and run; there's no
additional installation required and no other processes that need to be
running before you can connect to the standalone broker.

Tim

On Sun, Jan 31, 2016 at 4:11 AM, motic <mo...@gmail.com> wrote:

> Hi Robbie,
>
> Thanks for taking the time to reply!
> As I mentioned, I'm new to this subject, therefore I have no idea as to the
> AMQP architecture.
> One more question if I may..
>
> As far as I understand it, I need to have only one Broker and it will be
> accessed by several clients - is that right ? I mean that once I have the
> ActiveMQ broker running on my Application serever - I dont need to have
> another broker on my Device driver side - just a client.
>
> The reason I'm asking is because I found some C APIs online - so in case
> they are compatible with AMQP - all i need to do is to compile them to a
> library and use it on my device driver side, no need for any additional
> installtions - right ?
>
> In addition, I encountered the CMS API ( http://activemq.apache.org/cms)
> <http://activemq.apache.org/cms/>   - can I consider it as another option
> for a C++ client ?
>
> Thanks again.
>
>
>
>
>
>
> --
> View this message in context:
> http://activemq.2283324.n4.nabble.com/ActiveMQ-and-AMQP-Qpid-RabbitMQ-tp4706562p4706696.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>

Re: ActiveMQ and AMQP (Qpid/RabbitMQ)

Posted by motic <mo...@gmail.com>.
Hi Robbie,

Thanks for taking the time to reply!
As I mentioned, I'm new to this subject, therefore I have no idea as to the
AMQP architecture.
One more question if I may..

As far as I understand it, I need to have only one Broker and it will be
accessed by several clients - is that right ? I mean that once I have the
ActiveMQ broker running on my Application serever - I dont need to have
another broker on my Device driver side - just a client. 

The reason I'm asking is because I found some C APIs online - so in case
they are compatible with AMQP - all i need to do is to compile them to a
library and use it on my device driver side, no need for any additional
installtions - right ?

In addition, I encountered the CMS API ( http://activemq.apache.org/cms)
<http://activemq.apache.org/cms/>   - can I consider it as another option
for a C++ client ?

Thanks again.






--
View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-and-AMQP-Qpid-RabbitMQ-tp4706562p4706696.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Re: ActiveMQ and AMQP (Qpid/RabbitMQ)

Posted by Robbie Gemmell <ro...@gmail.com>.
On 28 January 2016 at 08:51, motic <mo...@gmail.com> wrote:
> Hi all,
> I'm new to this subject - so I hope my question is indeed relevant to this
> forum.
>
> I'm now starting to work on a new java application that is using wildfly10
> as it's application server.
> This application (and server) will run an embedded device and not on PC.
> The Linux image I'm using is created by Yocto (it's not a stnadard
> Debian/Ubunto distribution).
> So this is the java part..
>
> My device will also run some device-drivers (controling the low-level HW)
> that will be written in C/C++ and I would like to use JMS for reliable
> message exchange between the Java application and the C based device
> drivers. Since wildfly can support ActiveMQ I would like to use ActiveMQ as
> the message broker, the problem is that my Yocto image does not have support
> (or avaiable receipe) for it. The only brokers supported by Yocto are Qpid
> and RabbitMQ. So my question is whether there is an issue with using
> Qpid/RabittMQ clients (C++ API) working on AMQP protocol to communicate with
> the ActiveMQ broker on the Java side ?
>
> I hope my question is clear and make sense :) ..
>
> Thanks in advance, Motic.
>
>
>
> --
> View this message in context: http://activemq.2283324.n4.nabble.com/ActiveMQ-and-AMQP-Qpid-RabbitMQ-tp4706562.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.

ActiveMQ supports AMQP 1.0 on the broker side, so if the
qpid:messaging C++ client you are using is new enough and has the AMQP
1.0 support compiled in (requires Qpid Proton as a dependency) then
you should be able to use it. I know RabbitMQ supports AMQP 1.0 on the
broker side (theres a plugin for it), but I'm not sure the same is
true of the clients.

Robbie