It's very difficult for us to give a recommendation since we're not familiar 
with your business or architecture, and there's rarely a "one size fits all" 
solution.

But I'll try to give some pointers, if you're sending messages from web 
requests into an application in the same app server instance then using the JCA 
managed connection factory is the recommended approach (java:/JmsXA) and will 
give you the pooling you need. The overhead of this shouldn't be too high for 
sending messages.

Do you need MDBs? Well that really depends on whether you also need to persist 
the row to a database in the same transaction. Doing this in an MDB allows you 
to use JTA to do the message delivery and insert of row in the same global 
transaction. Of course this comes at an overhead.

If you can design out the insert into the DB that will give you your biggest 
performance boost, since then you can just use a standard JMS consumer and you 
can avoid JTA too. But as we've discussed before I'm not sure that's possible 
for you.

To demonstrate the overhead of all this stuff, try creating a simple program 
that uses raw JMS to send and consume from a queue. No JTA, MDB, JCA, Spring or 
anything else. And compare the performance.


View the original post : 
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4244463#4244463

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=4244463
_______________________________________________
jboss-user mailing list
jboss-user@lists.jboss.org
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to