COM+ 큐에 대기된 구성 요소와 함께 COM+ 이벤트 사용
COM+ 이벤트 서비스는 게시자에서 구독자에 대한 이벤트 배달을 관리하는 데 사용됩니다. COM+ 큐에 대기 중인 구성 요소 서비스를 사용하여 게시자와 구독자 처리 시간을 독립적으로 만들 수 있습니다. 게시자의 메시지를 큐에 대기하고 나중에 구독자에게 재생합니다. 큐에 대기 중인 구성 요소 서비스를 사용해야 하는지 여부는 애플리케이션의 기본 비즈니스 논리에 따라 달라집니다. 시간이 독립적인 이벤트가 있어야 하는 경우 COM+ 대기 중인 구성 요소 서비스와 함께 COM+ 이벤트 서비스를 사용하여 이벤트를 만들 수 있습니다.
참고
COM+ 큐에 대기된 구성 요소 서비스를 사용하는 방법에 대한 자세한 내용은 COM+ 큐에 대기된 구성 요소를 참조하세요.
큐에 대기 중인 구성 요소 서비스는 단일 메시지 내에서 메서드 호출 순서를 유지 관리합니다. 레코더는 모든 메서드 호출을 메시지로 일괄 처리한 다음, 메시지가 처리될 때 플레이어가 해당 메서드를 순서대로 호출합니다.
대기 중인 구성 요소 레코더와 플레이어는 다음 두 위치 중 하나에 배치할 수 있습니다.
- 게시자와 이벤트 개체 간
- 이벤트 개체와 구독자 간
게시자와 이벤트 개체 사이에 레코더와 플레이어를 배치하면 이벤트 클래스 구성 요소를 큐에 대기할 수 있습니다. 이벤트 클래스 구성 요소는 큐에 표시되어야 하며 게시자와 별개인 프로세스에서 플레이어가 활성화해야 합니다.
이벤트를 비동기적으로 전달하려면 이벤트 개체와 구독자 간에 레코더와 플레이어를 작성하고 구독 개체의 Queued 특성을 설정합니다. 그러면 SubscriberMoniker가 다음과 같이 설정됩니다. "queue:/new:/{12345678-1234-1234-1234-123456789012}".
이벤트 상황에서 큐에 대기 중인 구성 요소를 사용할 때 고려해야 할 배달 의미의 순서가 있습니다. 큐에 대기 중인 구성 요소는 하나의 메시지에서 단일 개체의 수명 내에 있는 모든 호출을 기록하고 재생하므로 모든 호출이 생성된 순서대로 재생됩니다. 그러나 둘 이상의 개체가 있는 세션이 두 개 이상 있는 경우 순서를 보장할 수 없습니다. 순서가 중요한 경우 동일한 개체 instance 순서대로 재생해야 하는 호출이 있는지 확인합니다.
관련 항목