You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by msbaw <bl...@gmail.com> on 2010/02/16 23:37:41 UTC

Is ActiveMQ good fit for our project?

Hi,

We are starting a new project and wanted some input/feedback to validate if
ActiveMQ is a good fit.

We have a single central server and thousands of remote clients. Clients
maybe located behind a NAT or Firewall. Every now and then we would like to
send a message from central server to a particular client so that client can
initiate a particular task. We don't expect number of messages sent from
central server to client to be frequent.
Any communication between server and client must be secured, preferably via
SSL.

Because message is sent from server to one client at any given time, we were
thinking of making use of Point to Point Messaging.

For PTP how does receiver get the message? 
Does the receiver poll message queue to check if it has any messages for
him? or Is the message pushed from queue to receiver? If message is pushed,
how does the provider know the IP of client where message needs to be pushed
esp, when receiver is behind router/NAT.  What about SSL if the message is
pushed, would we need SSL certificate for each client?

-Thanks-
MB


-- 
View this message in context: http://old.nabble.com/Is-ActiveMQ-good-fit-for-our-project--tp27615563p27615563.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.


Re: Is ActiveMQ good fit for our project?

Posted by Tammer Salem <ta...@googlemail.com>.
Just some updates to your specific questions below:

On 20 February 2010 13:21, Tammer Salem <ta...@googlemail.com> wrote:

> On the surface it sounds like your project could make good use of ActiveMQ.
> Using ActiveMQ is a bit like choosing what your enterprise integration layer
> will look like. The advantage of ActiveMQ is that it uses industry proven
> messaging (in JMS) and has the convenience of providing many different types
> of connectors.
>
> The questions you need to ask are:
>
>    1. Do the messages from server to clients *absolutely have* to arrive
>    at the client?
>    2. Does the server need acknowledgement that the message was received
>    by the client?
>    3. Is the messaging a fire and forget or is there some
>    synchronous/asynchronous activity going on?
>    4. You mention SSL - are you trying to secure the connection (to give
>    the client authenticity of the server) or are you trying to secure the
>    messages themselves?
>
>
> All of these issues are handled by ActiveMQ - so it is a good place to
> start. It sounds like you want to use JMS queues (assuming you need
> point-to-point messaging). And of course there is an SSL option for
> encrypting the transport.
>
> I would suggest setting up a small POC (shouldn't take you very long). If
> you like it, then it's just a matter of "productionising" it.
>
> If you have any other queries about the details, just come back to this
> forum.
>
> regards,
> Tammer
>
>
> On 16 February 2010 22:37, msbaw <bl...@gmail.com> wrote:
>
>>
>> Hi,
>>
>> We are starting a new project and wanted some input/feedback to validate
>> if
>> ActiveMQ is a good fit.
>>
>> We have a single central server and thousands of remote clients. Clients
>> maybe located behind a NAT or Firewall. Every now and then we would like
>> to
>> send a message from central server to a particular client so that client
>> can
>> initiate a particular task. We don't expect number of messages sent from
>> central server to client to be frequent.
>> Any communication between server and client must be secured, preferably
>> via
>> SSL.
>>
>> Because message is sent from server to one client at any given time, we
>> were
>> thinking of making use of Point to Point Messaging.
>>
>> For PTP how does receiver get the message? [It depends on what kind of
>> connector you are using. In most circumstances you will probably implement a
>> listener (usually called on Message) which is invoked when a message is
>> received. Check the documentation of the particular connector you want to
>> use and it will most probably have an overloaded "onMessage" function]
>> Does the receiver poll message queue to check if it has any messages for
>> him? [The receiver listens] or Is the message pushed from queue to
>> receiver? If message is pushed,
>> how does the provider know the IP of client where message needs to be
>> pushed
>> esp, when receiver is behind router/NAT. [The receiver (or consumer) will
>> register with activemq that it is listening to a particular queue - this
>> will allow active mq to "push" the message to the receiver]  What about
>> SSL if the message is
>> pushed, would we need SSL certificate for each client? [Check this
>> article for SSL http://activemq.apache.org/how-do-i-use-ssl.html]
>
>
>> -Thanks-
>> MB
>>
>>
>> --
>> View this message in context:
>> http://old.nabble.com/Is-ActiveMQ-good-fit-for-our-project--tp27615563p27615563.html
>> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>>
>>
>

Re: Is ActiveMQ good fit for our project?

Posted by Tammer Salem <ta...@googlemail.com>.
On the surface it sounds like your project could make good use of ActiveMQ.
Using ActiveMQ is a bit like choosing what your enterprise integration layer
will look like. The advantage of ActiveMQ is that it uses industry proven
messaging (in JMS) and has the convenience of providing many different types
of connectors.

The questions you need to ask are:

   1. Do the messages from server to clients *absolutely have* to arrive at
   the client?
   2. Does the server need acknowledgement that the message was received by
   the client?
   3. Is the messaging a fire and forget or is there some
   synchronous/asynchronous activity going on?
   4. You mention SSL - are you trying to secure the connection (to give the
   client authenticity of the server) or are you trying to secure the messages
   themselves?


All of these issues are handled by ActiveMQ - so it is a good place to
start. It sounds like you want to use JMS queues (assuming you need
point-to-point messaging). And of course there is an SSL option for
encrypting the transport.

I would suggest setting up a small POC (shouldn't take you very long). If
you like it, then it's just a matter of "productionising" it.

If you have any other queries about the details, just come back to this
forum.

regards,
Tammer


On 16 February 2010 22:37, msbaw <bl...@gmail.com> wrote:

>
> Hi,
>
> We are starting a new project and wanted some input/feedback to validate if
> ActiveMQ is a good fit.
>
> We have a single central server and thousands of remote clients. Clients
> maybe located behind a NAT or Firewall. Every now and then we would like to
> send a message from central server to a particular client so that client
> can
> initiate a particular task. We don't expect number of messages sent from
> central server to client to be frequent.
> Any communication between server and client must be secured, preferably via
> SSL.
>
> Because message is sent from server to one client at any given time, we
> were
> thinking of making use of Point to Point Messaging.
>
> For PTP how does receiver get the message?
> Does the receiver poll message queue to check if it has any messages for
> him? or Is the message pushed from queue to receiver? If message is pushed,
> how does the provider know the IP of client where message needs to be
> pushed
> esp, when receiver is behind router/NAT.  What about SSL if the message is
> pushed, would we need SSL certificate for each client?
>
> -Thanks-
> MB
>
>
> --
> View this message in context:
> http://old.nabble.com/Is-ActiveMQ-good-fit-for-our-project--tp27615563p27615563.html
> Sent from the ActiveMQ - User mailing list archive at Nabble.com.
>
>