Partager via


1.3.3.3 Transaction Manager Role

The Transaction Manager Role is generally performed by specialized middleware software programs that provide transactional services to applications and resource managers.

The transaction manager role is typically responsible for the following tasks:

  • Providing the following services to applications and resource managers:

    • Beginning transactions

    • Completing transactions

    • Coordinating agreement with participants on the outcome of the transaction

    • Reaching the decision to commit

    • Ensuring the outcome decision is reliably distributed

    • Coordinating the process of recovery if failures occur

  • Coordinating the outcome of individual transactions by using the Two-Phase Commit protocol.

  • Coordinating recovery with other participants after a process or communication failure. See section 1.3.4 for recovery details.

A transaction manager is best understood as the aggregation of several cooperating software modules that work together to provide the services previously mentioned. This protocol calls these software modules facets, and assumes the presence of the following five facets:

A transaction manager provides implementation-specific mechanisms to allow the facets to communicate with one another within the transaction manager itself.

In contrast, the transaction manager facets use the MSDTC Connection Manager: OleTx Transports Protocol as specified in [MS-CMPO], and the MSDTC Connection Manager: OleTx Multiplexing Protocol as specified in [MS-CMP], as transports for this protocol when they communicate with other participants (for example, applications, resource managers, and remote transaction managers). The subprotocols that are used to provide services to these participants are known as connection types. The specific connection types that are used in this protocol are specified in detail in section 3.

These facets are functionally dependent upon each other. A general-purpose transaction manager is composed of all five of these facets.

The following figure shows the transaction manager facets.

Transaction manager facets

Figure 8: Transaction manager facets