Transaction Processing Monitors TP monitors initially developed as multithreaded servers to support large numbers of terminals from a single process. Provide infrastructure for building and administering complex transaction processing systems with a large number of clients and multiple servers. Provide services such as: Presentation facilities to simplify creating user interfaces Persistent queuing of client requests and server responses Routing of client messages to servers Coordination of two-phase commit when transactions access multiple servers. Some commercial TP monitors:CICS from IBM,Pathway from Tandem, Top End from NCR,and Encina from Transarc Database System Concepts,5th Ed. 25.2 @Silberschatz,Korth and Sudarshan
Database System Concepts, 5 25.2 ©Silberschatz, Korth and Sudarshan th Ed. Transaction Processing Monitors TP monitors initially developed as multithreaded servers to support large numbers of terminals from a single process. Provide infrastructure for building and administering complex transaction processing systems with a large number of clients and multiple servers. Provide services such as: Presentation facilities to simplify creating user interfaces Persistent queuing of client requests and server responses Routing of client messages to servers Coordination of two-phase commit when transactions access multiple servers. Some commercial TP monitors: CICS from IBM, Pathway from Tandem, Top End from NCR, and Encina from Transarc
TP Monitor Architectures remote server files remote server files clients clients (a)Process-per-client model (b)Single-process model monitor 人 remote router servers files remote routers servers files clients clients (c)Many-server,single-router model (d)Many-server,many-router model Database System Concepts,5th Ed. 25.3 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.3 ©Silberschatz, Korth and Sudarshan th Ed. TP Monitor Architectures
TP Monitor Architectures (Cont.) Process per client model-instead of individual login session per terminal,server process communicates with the terminal,handles authentication,and executes actions. Memory requirements are high Multitasking-high CPU overhead for context switching between processes Single process model-all remote terminals connect to a single server process. Used in client-server environments Server process is multi-threaded;low cost for thread switching No protection between applications Not suited for parallel or distributed databases Database System Concepts,5th Ed. 25.4 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.4 ©Silberschatz, Korth and Sudarshan th Ed. TP Monitor Architectures (Cont.) Process per client model - instead of individual login session per terminal, server process communicates with the terminal, handles authentication, and executes actions. Memory requirements are high Multitasking- high CPU overhead for context switching between processes Single process model - all remote terminals connect to a single server process. Used in client-server environments Server process is multi-threaded; low cost for thread switching No protection between applications Not suited for parallel or distributed databases
TP Monitor Architectures(Cont.) Many-server single-router model-multiple application server processes access a common database;clients communicate with the application through a single communication process that routes requests. Independent server processes for multiple applications Multithread server process Run on parallel or distributed database Many server many-router model-multiple processes communicate with clients. Client communication processes interact with router processes that route their requests to the appropriate server. Controller process starts up and supervises other processes. Database System Concepts,5th Ed. 25.5 ©Silberschat乜,Korth and Sudarshan
Database System Concepts, 5 25.5 ©Silberschatz, Korth and Sudarshan th Ed. TP Monitor Architectures (Cont.) Many-server single-router model - multiple application server processes access a common database; clients communicate with the application through a single communication process that routes requests. Independent server processes for multiple applications Multithread server process Run on parallel or distributed database Many server many-router model - multiple processes communicate with clients. Client communication processes interact with router processes that route their requests to the appropriate server. Controller process starts up and supervises other processes
Detailed Structure of a TP Monitor input queue authorization lock manager recovery manager application servers log manager database and resource managers network output queue Database System Concepts,5th Ed. 25.6 @Silberschatz,Korth and Sudarshan
Database System Concepts, 5 25.6 ©Silberschatz, Korth and Sudarshan th Ed. Detailed Structure of a TP Monitor