다음을 통해 공유


Active Directory Domain Services 프로그래머의 복제 모델

다음은 Active Directory Domain Services 복제 모델에 대한 설명입니다.

DC(Active Directory 도메인 컨트롤러)에 대한 모든 업데이트는 각 요청에 대해 하나의 개체를 생성, 수정 또는 삭제하는 LDAP 요청을 사용하여 수행됩니다. 단일 요청은 개체에서 여러 특성을 설정하거나 수정할 수 있습니다.

업데이트 요청은 일부 DC에서 원자성 트랜잭션으로 처리됩니다. 전체 업데이트가 발생하거나 그 중 어느 것도 수행하지 않습니다. 요청자가 업데이트 요청에 대한 성공적인 응답을 받으면 전체 요청이 성공(커밋됨)됩니다. 이를 "원래 쓰기"라고 합니다. 여러 LDAP 요청을 단일 더 큰 트랜잭션으로 그룹화할 수 없습니다.

원래 쓰기에서 DC는 새 특성 또는 수정된 각 특성 값에 대해 "스탬프"를 계산하고 이 스탬프를 값에 연결하므로 값이 복제될 때 스탬프도 복제됩니다. 새 스탬프는 고유하며 업데이트의 경우 새 스탬프가 해당 DC의 이전 값에 있는 스탬프보다 큽니다.

경우에 따라 DC는 DC가 마지막으로 복제를 수행한 이후 변경된 개체 집합을 선택합니다. 그런 다음 각 개체에 대해 개체가 마지막으로 복제된 이후 변경된 특성의 모든 현재 값을 포함하는 단일 메시지를 다른 모든 DC에 보냅니다. 복제 메시지는 신뢰할 수 있으며 순서대로 배달되지만 배달하는 데 더 많은 시간이 필요할 수 있습니다.

한 DC가 다른 DC에서 복제 메시지를 받으면 다음과 같이 처리합니다. 수정된 각 특성에 대해 복제 메시지의 값에 대한 스탬프가 현재 값의 스탬프보다 크면 DC가 업데이트를 적용합니다. 그렇지 않으면 DC가 업데이트를 삭제합니다. 각 복제 메시지는 원래 쓰기와 마찬가지로 원자성 트랜잭션으로 적용됩니다.

이것이 Active Directory Domain Services 복제 모델입니다. 이 모델의 주요 속성은 다음과 같습니다.

  • 단일 개체에 대한 원래 쓰기는 원자성입니다.
  • 변경 내용을 복제할 때 원래 쓰기에서 수행한 모든 변경 내용이 전송되거나 변경 내용이 전송되지 않습니다.
  • 단일 개체에 복제된 쓰기는 원자성이지만 충돌은 특성별 특성으로 해결됩니다.

모델은 다른 개체에 대한 변경 내용의 복제 순서를 보장하지 않습니다. 변경 내용이 원래 쓰기 순서로 복제된다고 가정하는 애플리케이션을 작성하지 마세요. 모델은 개체의 특성이 두 번 변경되면 두 값이 모두 복제된다는 것을 보장하지 않습니다. 복제는 복제 시 현재 값만 보냅니다.

모델은 성능에만 영향을 주는 여러 가지 방법으로 현실과 다릅니다. 예를 들어 Active Directory 서버는 여러 개체에 대한 변경 내용이 포함된 복제 메시지를 보내지만 이러한 다중 개체 메시지의 내용은 일련의 단일 개체 메시지인 것처럼 처리합니다. Active Directory 서버는 모델에 설명된 대로 지점 간 복제를 수행하지 않고 모델과 기능적으로 동일한 보다 복잡하고 효율적인 전이적 복제를 수행합니다.