Two-Phase Commit System Architecture
1. Start transaction returns a unique transaction identifier
2. Resource accesses include the transaction identifier. For each transaction, RM registers with TM
3. When application asks TM to commit, the TM runs two-phase commit.