시스템 연결
서로 다른 컴퓨터에 있는 서로 다른 소프트웨어 간의 효과적인 메시지 교환은 통합의 필수 요건입니다. 존재하는 통신 스타일의 다양성을 감안할 때 BizTalk Server 다양한 프로토콜 및 메시지 형식을 지원해야 합니다. 다음에 설명하겠지만 엔진의 상당 부분이 이 통신의 작동과 관련이 있습니다. 그러나 한 가지 명심할 사실은 엔진이 XML 문서에 대해서만 내부적으로 작동한다는 것입니다. 도착 시의 메시지 형식에 관계없이 메시지는 수신 후 XML 문서로 변환되어야 합니다. 마찬가지로, 문서를 받는 사람이 해당 문서를 XML로 받아들일 수 없는 경우 엔진이 대상에 필요한 형식으로 문서를 변환합니다.
메시지 보내기 및 받기: 어댑터
BizTalk Server 다양한 다른 소프트웨어와 통신해야 하므로 이를 가능하게 하기 위해 어댑터를 사용합니다. 어댑터는 특정 프로토콜과 같은 통신 메커니즘의 구현입니다. 개발자가 지정된 상황에서 사용할 어댑터를 결정합니다. 예를 들어 BizTalk Server 제공하는 기본 제공 어댑터 중 하나를 선택하거나 Windows SharePoint Services 같은 인기 있는 제품에 대해 만든 어댑터를 사용하거나 사용자 지정 어댑터를 만들 수도 있습니다. 각각의 경우에서 어댑터는 어댑터 프레임워크라는 표준 기준을 바탕으로 빌드됩니다. 이 프레임워크는 어댑터를 만들고 실행하는 일반적인 방법을 제공하며 모든 어댑터 유형의 관리에 사용되는 동일한 도구도 지원합니다.
Microsoft BizTalk Server 다음과 같은 네이티브 어댑터가 포함되어 있습니다.
파일 어댑터: Windows 파일 시스템의 파일에서 읽고 쓸 수 있도록 지원합니다. 비즈니스 프로세스에 관련된 응용 프로그램은 대체로 로컬 또는 네트워크에 있는 동일한 파일 시스템에 액세스할 수 있으므로 파일을 통한 메시지 교환은 편리한 옵션이 될 수 있습니다.
FTP 어댑터: FTP(파일 전송 프로토콜) 서버와 BizTalk Server 간에 정보를 보내고 받을 수 있습니다.
HTTP 어댑터: HTTP를 사용하여 정보 보내기 및 수신을 지원합니다. BizTalk Server 다른 애플리케이션이 데이터를 보낼 수 있도록 하나 이상의 URL을 노출하며, 이 어댑터를 사용하여 다른 URL로 데이터를 보낼 수 있습니다.
MSMQ 어댑터: MSMQ(Microsoft Message Queuing)를 사용하여 메시지 보내기 및 받기를 지원합니다.
WebSphere MQ 어댑터: IBM의 WebSphere MQ(이전의 MQSeries)를 사용하여 메시지 보내기 및 받기를 지원합니다.
POP3 어댑터: POP3(Post Office Protocol) 버전 3을 사용하여 전자 메일 메시지 및 첨부 파일 수신을 지원합니다.
SMTP 어댑터: SMTP를 사용하여 메시지 보내기를 지원합니다. 표준 전자 메일 주소가 파티를 식별하는 데 사용됩니다.
SOAP 어댑터: BizTalk Server 웹 서비스에 연결할 수 있도록 웹 서비스 요청을 보내고 받을 수 있도록 지원합니다.
WCF 어댑터: Windows Communication Foundation을 사용하여 정보를 보내고 받을 수 있습니다.
WSS(Windows SharePoint Services) 어댑터: Microsoft Windows SharePoint 문서 라이브러리에 저장된 문서에 액세스하고 게시할 수 있도록 지원합니다.
또한 Microsoft에서 다음을 비롯하여 자주 사용되는 비즈니스 소프트웨어용 어댑터를 제공합니다.
JD Edwards OneWorld용 Microsoft BizTalk 어댑터
JD Edwards EnterpriseOne용 Microsoft BizTalk 어댑터
PeopleSoft Enterprise용 Microsoft BizTalk 어댑터
TIBCO Rendezvous용 Microsoft BizTalk 어댑터
TIBCO Enterprise Message Service용 Microsoft BizTalk 어댑터
이러한 어댑터에 대한 자세한 내용은 BizTalk Server 어댑터를 참조하세요.
데이터를 받는 데 사용되는 어댑터에 관계없이 어댑터가 받은 메시지를 공통적으로 처리해야 오케스트레이션에서 해당 메시지에 액세스할 수 있습니다. 마찬가지로, 오케스트레이션에서 생성된 보내는 메시지는 어댑터에서 전송하기 전에 먼저 처리해야 하는 경우가 많습니다.
메시지 처리: 파이프라인
비즈니스 프로세스의 기반이 되는 애플리케이션은 다양한 종류의 문서(예: 구매 주문 및 송장)를 교환하여 통신합니다. BizTalk Server 애플리케이션이 비즈니스 프로세스를 실행하려면 이러한 문서가 포함된 메시지를 올바르게 처리할 수 있어야 합니다. 이 처리에는 여러 단계가 포함될 수 있으므로 메시지 파이프라인으로 수행됩니다. 들어오는 메시지는 수신 파이프라인을 통해 처리되고 보내는 메시지는 송신 파이프라인을 통해 처리됩니다.
예를 들어 점점 더 많은 응용 프로그램이 XML 문서를 이해하도록 디자인되고 있지만 현재 대부분의 응용 프로그램은 이해하지 못합니다. BizTalk Server 내부적으로 XML 문서에서만 작동하므로 다른 형식을 XML로 변환하는 방법을 제공해야 합니다. 메시지 보낸 사람 인증 등의 기타 서비스도 필요할 수 있습니다. 모듈 형식이지만 사용자 지정 가능한 방식으로 이러한 작업과 기타 작업을 처리하기 위해 각각 하나 이상의 .NET 사용 또는 COM(Component Object Model) 구성 요소가 포함된 몇 개의 단계에서 파이프라인이 생성됩니다. 각 구성 요소는 메시지 처리의 특정 부분을 처리합니다. BizTalk Server 가장 일반적인 경우를 해결하는 몇 가지 표준 구성 요소를 제공합니다. 이러한 구성 요소만으로 충분하지 않은 경우 개발자가 수신 및 송신 파이프라인에 대한 사용자 지정 구성 요소를 만들 수도 있습니다.
위의 그림은 수신 파이프라인의 단계와 각 단계에 대해 제공되는 표준 구성 요소를 보여 줍니다. 이러한 단계 및 관련 구성 요소는 다음과 같습니다.
디코딩: BizTalk Server 이 단계에 대한 하나의 표준 구성 요소인 MIME/SMIME 디코더를 제공합니다. 이 구성 요소는 메시지 및 메시지에 포함된 첨부 파일을 MIME 또는 S/MIME(Secure MIME) 형식으로 처리할 수 있습니다. 구성 요소는 두 유형의 메시지를 모두 XML로 변환하며 S/MIME 메시지의 암호를 해독하고 디지털 서명을 확인할 수도 있습니다.
디스어셈블: 세 가지 표준 구성 요소가 제공됩니다. Flat File Disassembler 구성 요소는 플랫 파일을 XML 문서로 변환합니다. 이러한 파일은 각 레코드가 동일한 길이 및 구조를 사용하거나 구분 기호로 분리된(지정된 문자로 파일의 레코드 구분) 위치 파일일 수 있습니다. 두 번째 표준 구성 요소인 XML Disassembler는 XML을 사용하여 이미 설명된 들어오는 메시지를 구문 분석합니다. 현재 자주 사용되지 않는 세 번째 표준 구성 요소는 BizTalk Framework Disassembler입니다. 이 구성 요소는 BizTalk Server 2000에 구현된 BizTalk Framework에서 정의되는 신뢰할 수 있는 메시징 메커니즘을 사용하여 전송된 메시지를 받아들입니다.
유효성 검사: BizTalk Server 이 단계에 대한 XML 유효성 검사기 구성 요소를 제공합니다. 이름에서 알 수 있듯이 이 구성 요소는 지정한 스키마 또는 스키마 그룹에 대해 디스어셈블 단계에서 생성된 XML 문서의 유효성을 검사하고 문서가 해당 스키마 중 하나를 준수하지 않는 경우 오류를 반환합니다.
파티 해결: 이 단계의 유일한 표준 구성 요소인 파티 확인은 이 메시지의 보낸 사람의 ID를 확인하려고 시도합니다. 메시지가 디지털 서명된 경우 서명은 BizTalk Server 관리 데이터베이스에서 Windows ID를 조회하는 데 사용됩니다. (나중에 설명한 대로 이 데이터베이스는 BizTalk Server 관리 도구에서도 사용됩니다.) 메시지가 Windows 사용자의 인증된 SID(보안 식별자)를 전달하는 경우 이 ID가 사용됩니다. 두 메커니즘이 모두 실패하면 메시지 보낸 사람에게 기본 익명 ID가 할당됩니다.
보내는 메시지도 사용 중인 송신 파이프라인에서 정의된 여러 단계를 통해 처리될 수 있습니다. 위의 그림은 송신 파이프라인의 단계와 표준 구성 요소를 보여 줍니다. 아래에 이 계정과 키의 예제가 나와 있습니다.
사전 어셈블: 표준 구성 요소가 제공되지 않습니다. 대신 필요에 따라 여기에 사용자 지정 구성 요소를 삽입할 수 있습니다.
어셈블: 수신 파이프라인에서 디스어셈블 단계를 병렬로 처리하면 이 단계에는 세 가지 표준 구성 요소도 있습니다. Flat File Assembler는 XML 메시지를 위치 또는 구분 기호로 분리된 플랫 파일로 변환하고 XML Assembler는 보내는 XML 메시지에 대한 봉투(Envelope) 추가 및 기타 변경을 지원합니다. 세 번째 옵션인 BizTalk Framework Assembler는 신뢰할 수 있는 전송을 위해 BizTalk Framework 메시징 기술을 사용하여 메시지를 패키징합니다.
인코딩: BizTalk Server 이 단계의 표준 구성 요소인 MIME/SMIME 인코더를 하나만 정의합니다. 이 구성 요소는 보내는 메시지를 MIME 또는 S/MIME 형식으로 패키징합니다. S/MIME이 사용되는 경우 메시지를 디지털 서명하고 암호화할 수도 있습니다.
BizTalk Server XML로 이미 표현된 메시지를 처리하는 데 사용할 수 있는 간단한 수신/보내기 쌍을 포함하여 일부 기본 파이프라인을 정의합니다. 개발자는 파이프라인 디자이너를 사용하여 사용자 지정 파이프라인을 만들 수도 있습니다. Visual Studio 내에서 실행되는 이 도구는 개발자가 구성 요소를 끌어서 놓아 필요한 동작이 무엇이든 파이프라인을 만들 수 있는 그래픽 인터페이스를 제공합니다.
메시지 선택: 구독
메시지가 어댑터와 수신 파이프라인을 통과한 후 다음 단계는 메시지의 대상을 확인하는 것입니다. 메시지는 가장 자주 오케스트레이션을 대상으로 하지만 메시지가 송신 파이프라인으로 직접 이동하여 BizTalk Server 순전히 메시징 시스템으로 사용할 수도 있습니다. 두 경우 모두 등록을 사용하여 메시지와 대상이 일치됩니다.
수신 파이프라인이 메시지를 처리하는 경우 메시지의 여러 속성이 포함된 메시지 컨텍스트가 만들어집니다. 오케스트레이션 또는 송신 파이프라인은 이러한 속성 값을 기준으로 메시지에 등록할 수 있습니다. 예를 들어 오케스트레이션은 "Invoice" 형식의 모든 메시지 또는 QwickBank 회사에서 받은 "청구서" 형식의 모든 메시지 또는 $10,000 이상인 QwickBank 회사에서 받은 "청구서" 유형의 모든 메시지와 일치하는 구독을 만들 수 있습니다. 그러나 지정된 구독은 구독이 정의하는 조건과 일치하는 메시지만 구독자에게 반환합니다. 받은 메시지가 일부 오케스트레이션을 인스턴스화하여 비즈니스 프로세스를 시작하거나 이미 실행 중인 비즈니스 프로세스에서 다른 단계를 활성화할 수 있습니다. 마찬가지로, 오케스트레이션에서 메시지를 보내는 경우 해당 메시지는 파이프라인이 설정한 등록을 기준으로 송신 파이프라인과 일치됩니다.
- BizTalk Server 특정 오류 조건을 구독할 수도 있습니다. 특정 방식으로 오류 메시지를 처리하거나 Windows SharePoint Services 폴더 같은 특정 대상으로 라우팅할 수 있습니다.