So you don't want it to send any messages to a client until all messages
in a transaction are ready to be sent to the client.

This would introduce latency and concurrency overhead.
This is the natural overhead of any transaction isolation.

In fact, it is the worst kind (in terms of performance) 
of transaction isolation since you want to avoid
an attempt to read data where one transaction might not see data about to
be committed by another transaction (phantom reads).

I was trying to decide before whether this was one of the my "favourite" JMS
anti-patterns (trying to use JMS as a database).
I think you just confirmed it?

If you are interested in implementing this feature for JBossMQ, 
I would suggest you rewrite JBossMQ internally to use a database
for all data structures.

The other alternative would be introduce database locking semantics
into JBossMQ. 
i.e. either lock queues to prevent receivers taking messages that might
break your isolation level 
or let them take messages, but give them
an optimisitic failure if the attempt to make acknowledgements that
would break the isolation.

You have definitley fallen into another JMS anti pattern.
Trying to synchronously link one jms transaction with another.

Asynchronous messaging is designed not to have this semantic.

Some messaging systems give you an alternate semantic that is more suited
to asynchronous behaviour.
i.e They let you define group properties so that you specify that all messages 
in a group should go to a single consumer and they should all be processed 
together 
or not at all.
This is mainly intended to support message fragmentation.
JBossMQ has no such support.

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

Reply to the post : 
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3866518


-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to