James Strachan wrote:
On 7/13/06, Peter Leonard <[EMAIL PROTECTED]> wrote:


Hi Everyone,

I've been researching ActiveMQ as a potential solution for a system I'm
working on, and I was hoping for a little feedback from the AMQ community.

Is anyone out there using AMQ to support applications written in Perl?
I've found the Stomp/Perl client, but it's described as being of
Alpha-quality, and it doesn't seem like there's much in terms of
community or support specifically for it.

Assuming that the Perl API for Stomp is in need of some TLC (not an
insurmountable issue on my end), how is the general Stomp interface at
this point?


Stomp support is good; we've lots of clients so far and the protocol
has been well and trully hammered...

http://activemq.org/site/cross-language-clients.html

Though there are sometimes some gremlins with certain clients; but the
clients are generally simple enough to be easy to fix if you hit any
issues. (e.g. the perl client is quite small and pretty simple code to
fix if there's anything you need changing etc).


Sounds good - is there anyone out there using the Perl client that could shed any light on the situation WRT Perl? I've perused the client source, and it's extremely spartan - I'm sure it works, but it could definitely use some polishing. :)

To confirm - all the Stomp clients are implementing what's documented here:

http://stomp.codehaus.org/Protocol

Is there anything beyond that doc? For example, failover (see further commentary below).

I can see the desire to implement both failover & perhaps auto-discovery in the Perl client (in addition, setting it up as an easily-installable Perl module, like any other CPAN module). Are there other features in the other Stomp clients that would be desireable in the Perl client?


(Some quick background - the system requirements would be approximately
500 messages/second over an HA environment, supporting message
persistance for potentially several hours, if possible.  Early reading
with AMQ suggests that setting up a cluster would be the way to go).


Yeah - the perl would connect to a Master which could failover to a Slave...

http://activemq.org/site/masterslave.html

the only thing that needs adding is the ability to failver in the Perl
client which I don't think is there yet.


Funny you should bring that up.  :)

I'm a little confused with the AMQ docs with respect to MasterSlave versus clustering versus other topologies.

Some of the docs talk about MasterSlave as the way to implement HA setups, but then there are other docs talking about clustering brokers to create a messaging fabric, which suggests a network of equals.

To add to the confusion, the website differentiates between "Broker Clusters" and "Networks of Brokers", talking about them as two different things, but yet the paragraphs describing the two terms seem somewhat alike:

http://incubator.apache.org/activemq/clustering.html

Some insight would be appreciated - perhaps the answer to this question would be best -

If you had to set up AMQ to support 500 messages/second, in HA fashion, with message persistance (so clients could retrieve old messages) and you had a network of 10-15 machines that would run services interacting with AMQ, how would you set it up?

Would you set up 2-3 dedicated boxes for AMQ brokers? Would you run AMQ brokers on some or all of those servers (given that they have excess capacity) instead?

I know that some of this is more of a philosophical battle, and I'm not trying to start a holy war of any kind. I am personally a little hesitant about the Master/Slave relationship, if only because I know it from the RDBMS world, and I know the hell that can arise when a Master DB blows up. If a messaging fabric makes that problem go away, I'm a happy camper.

        Thank you for your time,

        Pete





Reply via email to