다음을 통해 공유


큐에 대기 중인 애플리케이션을 위한 웹 호스팅

WAS(Windows Process Activation Service)는 WCF(Windows Communication Foundation) 서비스를 호스트하는 애플리케이션을 포함하는 작업자 프로세스의 활성화 및 수명을 관리합니다. WAS 프로세스 모델은 HTTP에 대한 종속성을 제거하여 HTTP 서버에 대한 IIS 6.0 프로세스 모델을 일반화합니다. 이를 통해 WCF 서비스는 메시지 기반 활성화를 지원하고 지정된 컴퓨터에서 많은 수의 애플리케이션을 호스트하는 기능을 제공하는 호스팅 환경에서 net.msmq 및 msmq.formatname과 같은 HTTP 및 비 HTTP 프로토콜을 모두 사용할 수 있습니다.

WAS에는 애플리케이션에서 사용하는 큐 중 하나에 하나 이상의 메시지가 배치될 때 큐에 대기 중인 애플리케이션을 활성화하는 MSMQ(메시지 큐) 활성화 서비스가 포함되어 있습니다. MSMQ 활성화 서비스는 기본적으로 자동으로 시작되는 NT 서비스입니다.

WAS 및 해당 이점에 대한 자세한 내용은 Windows 프로세스 정품 인증 서비스에서 호스팅을 참조하세요. MSMQ에 대한 자세한 내용은 큐 개요를 참조하세요.

WAS의 큐 주소 설정

WAS 애플리케이션에는 URI(Uniform Resource Identifier) 주소가 있습니다. 애플리케이션 주소에는 기본 URI 접두사 및 애플리케이션별 상대 주소(경로)의 두 부분이 있습니다. 이러한 두 부분은 함께 조인할 때 애플리케이션에 대한 외부 주소를 제공합니다. 기본 URI 접두사는 사이트 바인딩에서 생성되며 사이트 아래의 모든 애플리케이션(예: "net.msmq://localhost", "msmq.formatname://localhost" 또는 "net.tcp://localhost")에 사용됩니다. 그런 다음 애플리케이션 주소는 애플리케이션별 경로 조각(예: "/applicationOne")을 가져와서 기본 URI 접두사에 추가하여 전체 애플리케이션 URI(예: "net.msmq://localhost/applicationOne")에 도착합니다.

MSMQ 활성화 서비스는 메시지를 모니터링해야 하는 큐를 찾기 위해 애플리케이션 URI를 사용합니다. MSMQ 활성화 서비스가 시작되면 수신하도록 구성된 컴퓨터의 모든 공용 및 프라이빗 큐를 열거하고 메시지를 모니터링합니다. MSMQ 활성화 서비스는 10분마다 모니터링할 큐 목록을 새로 고칩니다. 큐에 메시지가 있으면 활성화 서비스는 net.msmq 바인딩에 대해 가장 긴 일치 애플리케이션 URI에 큐 이름을 일치시키고 애플리케이션을 활성화합니다.

비고

활성화되는 애플리케이션은 큐 이름의 접두사(가장 긴 일치)와 일치해야 합니다.

예를 들어 큐 이름은 msmqWebHost/orderProcessing/service.svc입니다. 애플리케이션 1에 service.svc가 있는 가상 디렉터리 /msmqWebHost/orderProcessing이 있고 애플리케이션 2에 orderProcessing.svc가 있는 가상 디렉터리 /msmqWebHost가 있는 경우 애플리케이션 1이 활성화됩니다. 애플리케이션 1이 삭제되면 애플리케이션 2가 활성화됩니다.

비고

큐가 만들어지면 MSMQ 활성화 서비스가 큐 목록을 새로 고칠 때까지 큐에 전송된 모든 메시지가 애플리케이션을 활성화하지 않습니다. 즉, 큐가 만들어진 시간으로부터 최대 10분이 소요됩니다. 활성화 서비스를 다시 시작하면 큐 목록도 새로 고쳐집니다.

개인 및 공용 큐가 주소 지정에 미치는 효과

MSMQ 활성화 서비스는 프라이빗 및 퍼블릭 큐 모니터링을 구분하지 않습니다. 따라서 동일한 이름의 퍼블릭 및 프라이빗 큐를 가질 수 없습니다. 이렇게 하면 웹 호스팅 애플리케이션이 큐 중 하나에서 읽기를 활성화할 수 있습니다.

활성화를 위한 큐 구성

MSMQ 활성화 서비스는 NETWORK SERVICE로 실행됩니다. 애플리케이션을 활성화하기 위해 큐를 모니터링하는 서비스입니다. 큐에서 애플리케이션을 활성화하려면 큐에서 네트워크 서비스 액세스를 제공하여 ACL(액세스 제어 목록)의 메시지를 피킹해야 합니다.

포이즌 메시징

WCF에서 포이즌 메시지 처리는 채널에서 처리됩니다. 이 채널은 메시지가 포이즌임을 감지할 뿐만 아니라 사용자 구성에 따라 처리를 선택합니다. 결과적으로 큐에 단일 메시지가 있습니다. 웹 호스팅 애플리케이션이 연속으로 중단되고 메시지가 다시 시도 큐로 이동됩니다. 재시도 주기 지연에 의해 결정되는 시점에서 메시지는 다시 시도 큐에서 주 큐로 이동하여 다시 시도합니다. 그러나 이를 위해서는 대기 중인 채널이 활성화되어야 합니다. WAS에서 애플리케이션을 재활용하는 경우 큐에 대기 중인 애플리케이션을 활성화하기 위해 다른 메시지가 주 큐에 도착할 때까지 메시지가 재시도 큐에 유지됩니다. 이 경우 해결 방법은 다시 시도 큐에서 다시 주 큐로 메시지를 수동으로 이동하여 애플리케이션을 다시 활성화하는 것입니다.

하위 큐 및 시스템 큐 주의 사항

시스템 전체 삭제 편지 큐와 같은 시스템 큐 또는 포이즌 하위 큐와 같은 하위 큐의 메시지에 따라 WAS가 호스팅하는 애플리케이션을 활성화할 수 없습니다. 이 버전의 제품에 대한 제한 사항입니다.

참고하십시오