Who uses a transaction processing monitors and how are they useful in large database systems?
Transaction processing monitors are typically used in environments with a very high volume of transactions. For example, airline reservations, security systems, customer service and order/delivery process systems. A transaction monitor helps to manage these high volume transactions and allows the systems to be more scalable than a two tier architecture with direct client to server connection. If a new database server needs to be added to the environment, a manager simply needs to change a table within the transaction processing monitor and therefore doesn't need to change code within the application. Carnegie Mellon Software Engineering Institute describes the advantages of using transaction processing monitors in large database systems as being similar to:
… a type of message queuing, transaction scheduling, and prioritization service where the client connects to the TP monitor (middle tier) instead of the database server. The transaction is accepted by the monitor, which queues it and then takes responsibility for managing it to completion, thus freeing up the client.
In freeing up the client, transaction processing monitors speed up the performance of large database systems.
It is also suggested that transaction processing monitors are a 'cost-effective alternative to upgrading database management systems or platform resources to provide this same functionality' (Carnegie Mellon Software Engineering Institute). Transaction processing monitors can reduce costs in large database systems in several ways:
• Using resources efficiently means they have lower hardware requirements.
• Reduced downtimes mean increased profits.
• Development and maintenance time is reduced due to building systems with three-tier architecture.