Transactional Middleware Products and Standards

Transactional middleware products meet the requirements of multitier transaction processing (TP) applications. Twenty years ago, transactional middleware was delivered to market as a single product category, the TP (or OLTP) monitor. Many of these products are still in production, but the most popular transactional middleware environments are now delivered in the Java EE and .NET Framework environments. This chapter surveys some popular transactional middleware products and standards that include current products from Microsoft and Java vendors, popular persistence abstractions mechanisms that simplify database access, legacy TP monitors, including information on how each product can be reused in a modern system, such as a Service Oriented Architecture (SOA)-based application, and widely adopted TP standards. Transactions can be controlled by the resource manager or the transactional middleware. Different transactional middleware systems provide different options for composing multiple resources into local and distributed transactions. Most transactional middleware systems also support the use of web servers as request controllers, and rich Internet applications such as AJAX deliver desktop-like levels of interactivity and features to the web browser. All transactional middleware, including legacy TP monitors, supports access from web browsers either directly or through an intermediary. Legacy TP monitors such as CICS, IMS, ACMS, Tuxedo, and Pathway continue to be used in many production environments. They now include support for modern front ends such as .NET, Java, and Web Services, for integration with newer applications and SOA-based designs. Transaction management in the Java EE environment uses the Java Transaction API (JTA), which underlies the implicit programming model in EJBs, and can be accessed directly from Java objects.