다음을 통해 공유


6단원: 응답 수신 및 대화 종료

이 단원에서는 대상 서비스의 응답 메시지를 받고 대화를 종료하는 방법을 배웁니다. 이러한 단계는 데이터베이스 엔진의 시작자 인스턴스와 동일한 컴퓨터에서 실행 중인 Management Studio에서 실행해야 합니다.

절차

InitiatorDB 데이터베이스로 전환

  • 다음 코드를 복사하여 쿼리 편집기 창에 붙여 넣습니다. 그런 다음 실행하여 컨텍스트를 InstInitiatorDB 데이터베이스로 되돌립니다. 여기서 응답 메시지를 받고 대화를 종료합니다.

    USE InstInitiatorDB;
    GO
    

응답 받기 및 대화 종료

  • 다음 코드를 복사하여 쿼리 편집기 창에 붙여 넣습니다. 그런 다음 실행하여 응답 메시지를 받고 대화를 종료합니다. RECEIVE 문은 InstInitiatorQueue의 응답 메시지를 받습니다. END CONVERSATION 문이 시작자 쪽의 대화를 종료합니다. 마지막 SELECT 문은 응답 메시지가 마지막 단계에서 보낸 것과 같은 응답 메시지인지 확인할 수 있도록 응답 메시지의 텍스트를 표시합니다.

    DECLARE @RecvReplyMsg NVARCHAR(100);
    DECLARE @RecvReplyDlgHandle UNIQUEIDENTIFIER;
    
    BEGIN TRANSACTION;
    
    WAITFOR
    ( RECEIVE TOP(1)
        @RecvReplyDlgHandle = conversation_handle,
        @RecvReplyMsg = message_body
      FROM InstInitiatorQueue
    ), TIMEOUT 1000;
    
    END CONVERSATION @RecvReplyDlgHandle;
    
    -- Display recieved request.
    SELECT @RecvReplyMsg AS ReceivedReplyMsg;
    
    COMMIT TRANSACTION;
    GO
    

다음 단계

이것으로 자습서를 마칩니다. 자습서에는 간단한 소개만 나와 있습니다. 사용 가능한 옵션을 모두 설명하지는 않습니다. 자습서는 간소화된 논리와 오류 처리를 사용하며 프로덕션 환경에서는 사용할 수 없습니다.효율적이고 안정적이며 견고한 통신을 수행하려면 이 자습서의 예보다 더 복잡한 코드가 필요합니다.

Service Broker 자습서로 돌아가기

Service Broker 자습서