activemq-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "James Strachan" <james.strac...@gmail.com>
Subject Re: JMS the way to go?
Date Mon, 11 Aug 2008 09:18:53 GMT
2008/8/11 RMMM <morelli867@comcast.net>:
> I'm new to this kind of technology and trying to get some perspective.
> I'm writing a software system for a business with about a half dozen
> store locations. It's a system that will only be used internally and
> (for the foreseeable future) have very low volume.  It will just perform
> a few basic services involving db access.
>
> I decided to use an asynchronous client server approach. I could just
> write that from scatch, but I'm thinking, why reinvent the wheel? That's
> what JMS is for and it has all the functionality that I'll probably ever
> need.
>
> So my intention is to use JMS with, say, Apache ActiveMQ. (I'm using
> plain old Java SE). My only worry is that it my be overkill and add
> more complexity or overhead than necessary.
>
> Am I getting into more than I realize trying to use JMS?
>
> Is ActiveMQ a good choice? (as opposed to JBoss, Spring, ...)

ActiveMQ does seem to be the most popular and powerful open source
message broker. FWIW Spring is a framework, not a messaging provider


> So should I write a simple system from scratch, or go to the other extreme
> and use JMS?
>
> Any advice/comments very much appreciated.

I'd be tempted to hide the middleware from your application code; then
use something like Camel's bean integration to integrate the
'messaging' into your business logic in a kinda invisible way - then
you don't have to spend a while figuring out how to use the JMS APIs
properly etc.

http://activemq.apache.org/camel/bean-integration.html

Then you can easily switch between different middleware technologies
to suit your exact needs...
http://activemq.apache.org/camel/components.html

e.g. you can start with in-JVM messaging (SEDA)...
http://activemq.apache.org/camel/seda.html

then use ActiveMQ or JMS
http://activemq.apache.org/camel/activemq.html
http://activemq.apache.org/camel/jms.html

then use hibernate/JPA using a database table / entity bean as a queue...
http://activemq.apache.org/camel/hibernate.html
http://activemq.apache.org/camel/jpa.html


FWIW I've started hacking a little wiki page together describing this
technique of hiding middleware APIs from your business logic...
http://cwiki.apache.org/CAMEL/hiding-middleware.html

-- 
James
-------
http://macstrac.blogspot.com/

Open Source Integration
http://open.iona.com

Mime
View raw message