1.5. 여러 리소스를 수정하는 트랜잭션 관리
단일 리소스와 관련된 트랜잭션의 경우 일반적으로 리소스에 빌드된 트랜잭션 관리자를 사용할 수 있습니다. 여러 리소스가 포함된 트랜잭션의 경우 외부 트랜잭션 관리자 또는 트랜잭션 처리(TP) 모니터를 사용해야 합니다. 이 경우 리소스를 XA 스위치를 등록하여 트랜잭션 관리자와 통합해야 합니다.
단일 리소스 시스템에서 작동하는 트랜잭션을 커밋하는 데 사용되는 프로토콜과 다중 리소스 시스템에서 작동하는 트랜잭션을 커밋하는 데 사용되는 프로토콜에는 중요한 차이점이 있습니다.
- 1단계 커밋- 단일 리소스 시스템용입니다. 이 프로토콜은 트랜잭션을 단일 단계로 커밋합니다.
- 2단계 커밋- 다중 리소스 시스템용입니다. 이 프로토콜은 두 단계로 트랜잭션을 커밋합니다.
트랜잭션에 여러 리소스를 포함하면 일부 리소스에서 트랜잭션을 커밋한 후 시스템 오류가 발생할 수 있는 위험이 추가됩니다. 이로 인해 시스템이 일관성 없는 상태로 유지됩니다. 2단계 커밋 프로토콜은 이러한 위험을 제거하도록 설계되었습니다. 시스템을 재시작한 후 항상 일관된 상태로 복원할 수 있습니다.