Message Queuing Patterns for Middleware-Mediated Transactions

Many enterprise applications require the use of object-oriented middleware and message-oriented middleware in combination. Middleware-mediated transacdons have been proposed as a transaction model to address reliability of such applications; they extend distributed object transactions to include message-oriented transactions. In this paper, we present three message queuing patterns that we have found useful for implementing middleware-mediated transactions. We discuss and show how the patterns can be applied to support guaranteed compensation in the engineering of transactional enterprise applications.

[1]  Alejandro P. Buchmann,et al.  Integrating Notifications and Transactions: Concepts and X2TS Prototype , 2000, EDO.

[2]  Santosh K. Shrivastava,et al.  The CORBA Activity Service Framework for supporting extended transactions , 2003, Softw. Pract. Exp..

[3]  Rachid Guerraoui,et al.  Nesting Actions through Asynchronous Message Passing: the ACS Protocol , 1992, ECOOP.

[4]  David S. Linthicum,et al.  Enterprise Application Integration , 1999 .

[5]  A. Elmagarmid Database transaction models for advanced applications , 1992 .

[6]  Stefan Tai,et al.  Middleware mediated transactions , 2001, Proceedings 3rd International Symposium on Distributed Objects and Applications.

[7]  Stanley M. Sutton,et al.  Conditional messaging: extending reliable messaging with application conditions , 2002, Proceedings 22nd International Conference on Distributed Computing Systems.

[8]  Gustavo Alonso,et al.  Advanced transaction models in workflow contexts , 1996, Proceedings of the Twelfth International Conference on Data Engineering.

[9]  Stanley M. Sutton,et al.  Dependency-spheres: a global transaction context for distributed objects and messages , 2001, Proceedings Fifth IEEE International Enterprise Distributed Object Computing Conference.

[10]  Frank Leymann,et al.  Production Workflow: Concepts and Techniques , 1999 .

[11]  Frank Leymann,et al.  Building a robust workflow management system with persistent queues and stored procedures , 1998, Proceedings 14th International Conference on Data Engineering.

[12]  Rajeev Rastogi,et al.  ConTracts - A Low-Level Mechanism for Building General-Purpose Workflow Management-Systems. , 1995 .

[13]  Philip A. Bernstein,et al.  Principles of Transaction Processing , 1996 .

[14]  Paul W. P. J. Grefen,et al.  Global transaction support for workflow management systems: from formal specification to practical implementation , 2001, The VLDB Journal.

[15]  Isabelle Rouvellou,et al.  Strategies for Integrating Messaging and Distributed Object Transactions , 2000, Middleware.