TP monitors, such as IBM's CICS/6000, NCR's Top End, and Novell's
Tuxedo, provide various application services different from traditional middleware.
They provide transaction-tracking services that include the ability to route transactions across diversified systems, load balancing, recovery services, thread control, and restart systems and transactions after failures.
Transaction Processing (TP)
A transaction is a unit of work that either commits (executes to completion and its results persist) or aborts (fails and its results are undone).
Reliable, consistent, accurate, timely, transaction processing is
fundamental to the operations of a business and fundamental to effective business use of computers --
something that many online colleges and universities will teach as the basis of mixing business and ICT.
In the N-Ttier world, the application layer functions between the
presentation layer on the PC, and the data layer on the mainframe, UNIX, or NT system.
Procedures in the application layer make requests - both
transactional and non-transactional - to the data layer, which performs the requested operation on the database that it is assigned to work with.
Suppose a client application on a PC sends a message to a business
server residing on a different machine. What if the business server is not available at the time the message is sent?
What mechanism ensures that the sending application program knows
that the message is not transmitted successfully, or queues the message for delivery at a later time?
The complexity of an application also increases significantly;
- when two or more different RDBMSs are included in a system
configuration and referred to by a single transaction
- or when multiple servers on different machines and running different operating systems need to be managed
- or when hundreds or thousands of desktop users need to be serviced within guaranteed response times.
To handle such situations, many user organizations are acquiring
transaction processing (TP) monitors to carry out transaction processing on complex systems.
These Middleware solutions provide the support needed for
distributed transactional processing across networks running multiple machines and databases.
TP monitors provide a separate location for application processing and have led many client/server systems into the world of N-Tier computing.
As the name implies, TP break up complex applications into smaller
units, called transactions, and they ensure completion of the transactions.
Using a Transaction Processing (TP) Monitor
In a typical unit of work activity, a TP Monitor might manage a transaction requiring multiple database actions -- from the client point-of-origin across one or more servers and back to the client -- while ensuring that all systems remain in a consistent state.
With the use of this technology end-users can transparently initiate complex multi-server transactions from the desktop.
This allows applications to have an independent two-way computing
channel between heterogeneous systems within the enterprise.
In the quest for managing and maintaining businesses processes and transactions, TP has certainly proved its worth.
TP Monitors are defined as an operating system for transaction
The Capabilities of TP Monitors:
One of the jobs of the Transaction Processing (TP) Monitor is to
manage these transactions from their point of origin, on the client, across one or more servers and then back to the original client.
When the transaction ends, the TP Monitor ensures that all the
systems involved are in a consistent state. The TP Monitors essentially oversee all of the aspects of a distributed transaction.
TP Monitors provide transaction and data integrity - The TP monitor ensures that each transaction gets processed to completion or rolled back.
Fundamentally, a TP Monitors architectural framework
facilitates in building, running and administering a client/server application. They offer a wide array of benefits to client/server applications that can be applied to applications ranging from a few nodes to thousands of nodes.
Transaction-processing (TP) monitors provide the horsepower in the
middle tier and are the backbone of most three-tier client/server systems.
More than just middleware, TP monitors provide an independent
location for business processing and can connect to multiple database servers.
Perhaps the most significant feature of the TP monitor is its
ability to funnel database requests.
A three-tier client/server system that employs a TP monitor can
manage the database request of more than 1,000 users, while employing only a handful of database server connections.
TP Monitors remove the costly, process-per-client requirement by
funneling, prioritizing, partitioning and routing incoming client requests to shared server processes.
TP Monitor technology is well established and extraordinarily scaleable. Because it offers a practical replacement for the difficult and expensive two-tier methods discussed earlier, TP Monitor technology is now seen as a creating an open pathway to the distributed computing environment.
TP Monitors are proven sources for transactions for the
Internet, Intranets and server-to-server electronic commerce.
According to industry analysts, 90 percent of all mission-critical
transaction processing is done through one of the more than 100,000 currently installed TP Monitors.
Nearly all TP Monitor applications are implemented on high-end
systems such as IBMs CICS (Customer Information Control System) running MVS.
TP monitors are great for database funneling, because they are able to use only a handful of database connections while supporting thousands of clients.
TP monitors are also great at load balancing and recovery from
Communication services - Generally, the TP monitor supports
synchronous, asynchronous, store-and-forward, and conversational communication mechanisms.
Global naming and directory services - provide physical location
independence for cross-platform communications;
Flexibility - Use of a 3-tier or N-Tier application architecture is facilitated.
Scalability - Upward, to support hundreds or thousands of users in a heterogeneous configuration; downward, assisting users in migrating TP applications from proprietary mainframes to non-proprietary (open systems) environments.
High performance - TP monitor scheduling, queuing, monitoring, and load balancing capabilities optimize the use of system resources and thereby increase the overall performance of the system; more work can be accomplished in a given amount of time.
High availability - The TP monitor can often route user requests around network or node failures to continue processing of the requests; if a planned or unplanned outage of a business server or database server occurs, the TP monitor often handles re-initialization and restart automatically.
Workload management - In mixed workload environments (e.g., some heavy I/O, some light I/O, some interactive, some batch jobs) the TP monitor's scheduling capabilities plus its ability to take organization-specified priorities into account helps to ensure that overall processing within the system is handled as required.
Enhanced security - The TP monitor may maintain a security profile of each user authorized to access the system and of the user's specific privileges; user names and passwords are checked to augment the security of the overall computing environment.
On-line administration - From a single machine, an administrator can view all components of the system, gather information on operations, and issue commands to alter how the system executes - for example, to start up another business server if an existing server is overloaded in a N-Tier computing environment.
Access to legacy mainframe systems - Support for communication between midrange business servers and proprietary, legacy mainframes.
Vendor independence - Most TP monitors have been implemented on several hardware and operating system platforms; therefore, choosing a particular TP monitor does not "lock in" an organization to a particular hardware platform or operating system.
In addition, the X/Open consortium has defined an XA (transaction)
interface to be used by TP monitors in communicating with resource managers.
Therefore, which resource manager (e.g., which RDBMS) is actually
referred to during transaction processing can be transparent to the application.
Another benefit of TP Monitors is that they can detect hardware
failures by maintaining the status of client/server resources under their control.
In the event of a failure, the failed process is either restarted or switched over to a process on another node. They also support both static and dynamic load balancing practices.
On a single server node or on multiple nodes, TP Monitors can
prioritize requests and dynamically replicate server processes.
Last and not least, and most likely the underlying reasoning for
creating this type of environment, is the reduction of system expenditures.
According to the industry analysts, TP Monitors may result in total system cost savings of greater than 30 percent. An additional savings of up to 40 - 50 percent is achieved in development time has been seen when leveraging the mainframe as another tier in an N-tiered enterprise.
It is unclear which vendors will establish dominance in this market. The players include the pioneers - Multi-tier-Dynasty and Forte, the vendors whose products have stressed portability - Unify and Uniface, and the one & two-tier giants who are reengineering their products to introduce the N-Tier traits of partitioning and portability - IBM, PowerSoft and Microsoft.
Available TP monitors include Novell's TUXEDO, IBM's CICS,
IBM/Transarc's Encina, and AT&T/GIS's TopEnd.
Each has its unique history and some unique capabilities. All
provide the fundamental capabilities required for transaction processing and related system management functions, such as:
Transaction and data integrity
Access to legacy data
©Micromax Information Services Ltd. 1999