From: Brian McCallister Date: 2006-10-06T04:34:57+09:00 Subject: Re: Enterprise-Ruby Wish List by Francis Cianfrocca On Oct 5, 2006, at 11:32 AM, Francis Cianfrocca wrote: > Thanks, Brian. Actually I know a fair bit about ActiveMQ, and it's > the main > reason why I think the Ruby world would do well to come up with a > competitor. You're making a classical case for not re-inventing the > wheel, > but ActiveMQ is not the easiest product to use, nor is it particularly > graceful to require all manner of external bindings. It's also the > kind of > committee-designed rather than use-case-driven effort you'd expect > from > Java. How is it difficult to use? curl -O http://.../incubator-activemq-4.0.2.tar.gz tar -zxvf incubator-activemq-4.0.2.tar.gz sh ./incubator-activemq-4.0.2/bin/activemq At which point it is listening on port 61616 for its native protocol and 61613 for stomp. I'll post a screen cast demonstrating it, if you like. Would you mind expanding on "committee-designed" I am very curious about what makes you say so. James and Hiram account most of the core design, though quite a few other folks have been contributing. In terms of external bindings, you mean the fact that we specced out the Stomp transport protocol independently of ActiveMQ? If you look through the stomp-dev archives you'll see a lot of the same names as on activemq-dev (plus a number of others). If I thought it added much value I'll happily roll an activemq gem so the names match ;-) > Perhaps the obvious rejoinder is that a little pain never hurt anyone, > but then the success of Rails suggests that there may be a market > for a > better way. There are other, more widely-used solutions in the Java > world > that are commercial and very expensive. And there is also a very- > well funded > project afoot in the Java world (AMQP) which is intended to bring real > standardization to message-broker implementations and reduce costs. Do you mean Qpid, nee Blaze, ( http://incubator.apache.org/projects/ qpid ) which is the code developed by JPMorgan, Redhat, and IONA which is aiming to also join Apache? There are both Java and C++ based servers in the works, though the AMQP protocol is still evolving behind closed doors :-( AMQP is a very interesting protocol, it looks and feels, to me, more like an API expressed in bytes over the wire than an app level transport protocol because so much of the messaging server's internal capabilities are specced out as part of the wire protocol. Interestingly, ActiveMQ was designed by a small group of folks with lots of commercial messaging server experience, AMQP and Qpid by a committee of vendors with one big customer :-) The Java version does use MINA though, which rocks! > That is another strong clue that there is an unfilled gap. I've > been working on a > Ruby implementation of AMQP, which should be ready for early looks > quite > shortly now. Sweet! Make sure to mention it on the qpid dev list, they'll be excited! > I don't know anything about Gozirra. Have you used it? Only early versions for mucking about purposes. It is basically a minimal Stomp server implementation. -Brian