2012-01-31 2 views
5

TransactionScope 개체에 대한 간단한 질문입니다. 인터넷이 발견 :TransactionScope 및 "영구 리소스"

첫 번째 내구성이 자원 관리자에 액세스

, 경량 커미터 트랜잭션은 하나의 트랜잭션을 지원하기 위해 작성됩니다. 두 번째 영구 리소스 관리자에 액세스하면 은 분산 트랜잭션으로 승격됩니다.

괜찮아 보이지만 정확히 "내구성있는 리소스"가 무엇인지 이해하지 못했습니다. 나는 TransactionScope가 SQL Server 2005 이상에서만 작동한다는 것을 알고 있으므로 SQL Server 200에 액세스해야한다면 가능하지 않을까요? 디스크의 텍스트 파일은 어떻습니까? 디스크 액세스가 필요할 때 트랜잭션 제어 기능을 사용할 수 없다는 말을 항상 들었습니다. 어쩌면이 개체와 다를 수 있습니까?

감사합니다.

답변

5

This link은 내구성이 강한 리소스 관리자와 휘발성 리소스 관리자 간의 차이점에 대해 설명합니다.

명확히하기 위해 - TransactionScopes는 earlier versions of SQL으로 작동하지만, 간단한 트랜잭션 관리자는 2005+에서만 작동합니다. DTC는 SQL 2000 트랜잭션에 필요합니다.

트랜잭션 파일 시스템 (Vista 이상)에 대한 지원도 있습니다. here입니다. 거래 시스템 장애 occur.Resource 관리자가 트랜잭션의 상태를 기억하는 경우에도 내구성 :

+0

좋은 링크, 감사합니다 :) – Diego

2

자원 관리자는 두 가지 유형

내구성
  • 의이다. 시스템이 다시 시작될 때 그 사이에 시스템이 종료되면 트랜잭션이 이전 상태에서 진행될 수 있습니다. 예를 들어 SQL Server 및 MSMQ.
  • 휘발성 : 시스템 오류에 내성이 없습니다. This 일부 핵심 .Net 클래스의 트랜잭션 구현.