다음을 통해 공유


서비스 지향 솔루션의 구성 요소

이 섹션에서는 서비스 지향 솔루션의 주요 BizTalk Server 구성 요소에 대해 설명합니다. 다음 다이어그램은 솔루션의 주요 구성 요소를 보여 줍니다.

서비스 지향 솔루션 흐름 다이어그램

서비스 지향 솔루션에는 세 가지 버전의 오케스트레이션이 있습니다.

  • 백 엔드 응용 프로그램 세 개가 모두 스텁되는 버전.

  • 백 엔드 응용 프로그램 세 개가 모두 인라인으로 호출되는 버전.

  • 어댑터를 사용하여 응용 프로그램에 연결하는 버전.

    모든 버전의 오케스트레이션이 SDK\Senarios\SO\BTSSoln\Orchestrations 디렉터리에 나타납니다.

    인라인 버전의 오케스트레이션은 요청과 응답 사이의 지연 시간이 솔루션 중에 가장 낮습니다.

    원본 파일에 대한 자세한 내용은 서비스 지향 솔루션에 대한 파일 인벤토리를 참조하세요.

서비스 지향 솔루션의 오케스트레이션

CustomerServiceReceiveSend, CustomerServiceNativeRequestResponseCustomerService의 세 가지 오케스트레이션은 솔루션의 대부분을 구성합니다. CustomerServiceReceiveSendCustomerServiceNativeRequestResponse 오케스트레이션은 CustomerService 오케스트레이션을 호출하는 프런트 엔드 역할을 합니다. CustomerService 오케스트레이션은 대부분의 작업을 수행합니다. 즉, 백 엔드 애플리케이션에 요청을 보내고, 회신을 수집하고, 회신을 단일 메시지로 결합하고, 적절한 프런트 엔드 오케스트레이션에 메시지를 보냅니다. 프런트 엔드 오케스트레이션은 CustomerService 오케스트레이션을 호출하므로 프런트 엔드 오케스트레이션은 CustomerService 오케스트레이션이 완료될 때까지 기다립니다.

솔루션은 CustomerServiceNativeRequestResponse 오케스트레이션을 웹 서비스로 노출합니다. CustomerServiceReceiveSend 오케스트레이션은 MQSeries 큐에서 메시지를 가져옵니다.

백 엔드 응용 프로그램

서비스 지향 솔루션은 백 엔드 응용 프로그램과 통신합니다.

  • PaymentTracker 애플리케이션은 최근 결제의 시뮬레이션된 목록을 반환합니다. PaymentTracker 는 MQSeries 큐에서 요청을 읽고 응답을 다른 MQSeries 큐로 보냅니다.

  • PendingTransaction 애플리케이션은 고객 계정에 대해 보류 중인 트랜잭션의 합계를 보고합니다. 응용 프로그램은 그 후에 Microsoft HIS(Host Integration Server)를 사용하여 메인프레임 컴퓨터에 있는 CICS/COBOL 프로그램과 통신하는 웹 서비스입니다.

  • SAP 응용 프로그램은 고객의 전체 신용 한도에 대한 정보를 제공합니다. 솔루션은 SAP 응용 프로그램에 웹 서비스로서 연결됩니다. 애플리케이션은 BizTalk 어댑터 팩의 SAP 어댑터를 사용하여 SAP 시스템과 통신합니다.

Pipelines

서비스 지향 솔루션은 CustomerServiceReceiveSend 오케스트레이션에 대한 수신 파이프라인과 CustomerService 오케스트레이션의 PaymentTracker에 대한 송신 파이프라인의 두 위치를 제외한 기본 파이프라인을 사용합니다. 이 두 파이프라인은 모두 사용자 지정 구성 요소를 사용합니다.

CustomerServiceReceiveSend에 대한 수신 파이프라인에는 사용자 지정 파티 확인 구성 요소인 SSO 티켓 발급자 파이프라인 구성 요소가 포함됩니다. CustomerServiceReceiveSend 오케스트레이션이 수신하는 메시지에는 자격 증명이 없습니다. 이 오케스트레이션은 메시지가 IVR(Interactive Voice Response) 시스템에서 오는 경우 어떤 일이 발생하는지를 시뮬레이션합니다. 사용자 지정 파이프라인 구성 요소는 BizTalk 수신 호스트의 서비스 계정을 사용하여 자격 증명을 추가합니다.

반면 CustomerSericeNativeRequestResponse 오케스트레이션이 수신하는 메시지에는 이미 자격 증명이 있습니다. 웹 서비스의 가상 폴더는 통합 보안용으로 구성되어 있고 SOAP 수신 위치는 Enterprise SSO(Single Sign-On)를 통합하도록 구성되어 있으므로 SOAP 어댑터는 메시지에 대한 티켓을 생성합니다.

다른 사용자 지정 파이프라인은 CustomerService 송신 파이프라인에 PaymentTracker 애플리케이션에 표시됩니다. MQSeries 헤더 세터 파이프라인 구성 요소는 두 MQSeries 메시지 헤더 속성의 값을 설정합니다. 구성 요소는 첫 번째 메시지 데이터 형식(MQMD_Format)을 설정하여 메시지가 CICS 프로그램과 통신하는 데 일반적으로 사용되는 구조인 MQCIH 구조체 형식임을 나타냅니다. 둘째, MQCIH 구조(MQCIH_Format) 내의 데이터 자체 형식은 메시지가 문자열임을 표시하도록 설정됩니다.

MQCIH 형식을 사용하면 MQCIH 구조에서 사용자 ID 및 암호를 전달할 수 있습니다. SSO 관련 애플리케이션은 BizTalk 애플리케이션의 Windows 사용자 ID를 MQCIH 구조에 전달된 결제 추적 시스템의 사용자 ID에 매핑합니다.

참고

인라인 버전의 솔루션은 동일한 파이프라인을 오케스트레이션에서 호출하여 사용합니다. 그러면 파이프라인 코드를 다시 사용할 수 있습니다.

클라이언트 애플리케이션

솔루션에는 C#으로 작성된 클라이언트 응용 프로그램이 있습니다. 이 응용 프로그램을 사용하여 요청을 SOAP 또는 MQSeries 메시지로 보내고 결과를 확인할 수 있습니다.

기타 어셈블리

응용 프로그램에는 위의 요약 다이어그램에 표시되지 않은 보조 어셈블리가 몇 가지 포함되어 있습니다. 솔루션에 대한 유틸리티 어셈블리 유틸리티 함수입니다.

ErrorHelper 어셈블리에는 오류 코드를 메시지로 변환하고 오류 메시지를 오류 코드로 변환하는 클래스가 포함되어 있습니다.

ServiceLevelTracking 어셈블리에는 BAM(비즈니스 활동 모니터링) API를 사용하여 서비스 수준 계약 데이터를 추적하는 도우미 메서드가 포함되어 있습니다.

ConfigHelper 어셈블리에는 SSOConfigStore 애플리케이션에서 솔루션에 대한 구성 값을 검색하는 도우미 메서드가 포함되어 있습니다.

참고 항목

서비스 지향 솔루션 개발
서비스 지향 솔루션의 파일 인벤토리