비즈니스 프로세스 관리 솔루션에 대한 패턴 카탈로그
비즈니스 프로세스 관리 솔루션의 패턴에는 이전 섹션에서 설명한 엔터프라이즈 통합 패턴과 BizTalk Server 프로그래밍의 일반 패턴이 포함됩니다. 이 섹션의 목록에는 두 가지 패턴이 모두 나와 있습니다.
패턴 유형
다음 항목에서는 패턴을 간략하게 설명하고 솔루션에서 패턴을 사용하는 방법을 설명하는 다른 항목을 소개합니다. 필터와 같은 일반 패턴의 경우 보다 일반적인 항목을 소개합니다.
응용 프로그램 참조 패턴
BizTalk Server 사용하면 애플리케이션이 다른 애플리케이션에 대한 참조를 추가하여 동일한 그룹 내의 다른 애플리케이션에서 아티팩트를 사용할 수 있습니다. 비즈니스 프로세스 관리 솔루션에서는 테스트 솔루션 디자인뿐 아니라 주 솔루션에서도 응용 프로그램 참조를 사용합니다. 솔루션의 애플리케이션 참조에 대한 자세한 내용은 비즈니스 프로세스 관리 솔루션의 일부 디자인 원칙을 참조하세요.
비동기 회신 패턴
주문 관리자와 주문 처리 단계 간의 통신은 비동기적입니다. 즉, 관리자가 회신을 받을 때까지 처리를 계속합니다. 각 단계에서는 상관 관계 자동 연결 동적 포트를 사용하여 관리자에게 회신을 보냅니다. 상관 관계 자동 연결 포트를 사용하면 주문 관리자가 상관 관계 집합을 관리할 필요가 없습니다. 포트의 동적 특성을 통해 주문 관리자는 주문 단계로 회신할 포트 주소를 보낼 수 있습니다. 솔루션의 포트에 대한 자세한 내용은 프로세스 관리자를 통한 순서 흐름을 참조하세요.
정식 메시지 패턴
처리를 단순화하기 위해 솔루션에서 외부 메시지를 내부 형식으로 변환하는 경우가 많습니다. 이 형식이 정식 메시지의 한 가지 예입니다. 주문 브로커 오케스트레이션에서는 모든 주문 메시지를 하나 이상의 정식 주문 메시지로 변환합니다. 주문 관리자 오케스트레이션과 처리 단계에서는 이러한 일반 주문 형식을 사용합니다. 자세한 내용은 OrderBroker 오케스트레이션의 처리를 참조하세요.
코드 재시도 및 예외 처리 패턴
이 솔루션은 ExceptionHandler 오케스트레이션에서 대부분의 예외 처리를 중앙 집중화합니다. 이 오케스트레이션은 네트워크 연결이 끊어진 경우처럼 재시도하면 작업을 성공할 수 있는 경우에 사용됩니다. 오케스트레이션은 Recaller 개체를 사용하여 실패한 코드를 다시 실행합니다. 오케스트레이션에 대한 자세한 내용은 비즈니스 프로세스 관리 솔루션의 예외 처리를 참조하세요. ExceptionHandler 오케스트레이션도 참조하세요. Recaller 개체 사용에 대한 자세한 내용은 Recaller 개체를 참조하세요.
호위(convoy) 패턴
주문 관리자 오케스트레이션 OrderManager에서는 호위(convoy) 패턴을 사용하여 처리 중인 주문에 대한 후속 변경 내용을 catch하고 처리합니다. 주문 관리자의 호송 패턴에 대한 자세한 내용은 프로세스 관리자를 통한 주문 흐름의 "주문 업데이트"를 참조하세요.
배달 알림을 사용한 조정
OrderBroker 오케스트레이션은 배달 알림을 사용하여 기록이 두 번째 주문 처리 단계(CableOrder2)에 의해 업데이트되기 전에 기록 데이터베이스에 항목이 만들어지도록 합니다. 자세한 내용은 프로세스 관리자를 통한 순서 흐름의 "스테이지와 조정"을 참조하세요. 배달 알림에 대한 일반적인 내용은 승인 사용을 참조하세요.
사용자 지정 예외 패턴
재시도할 수 없는 예외의 경우 솔루션에서는 일반적인 BizTalk Server 예외 처리와 함께 사용자 지정 예외 처리를 사용합니다. 사용자 지정 예외 처리는 보다 구체적인 예외 처리를 제공합니다. 또한 중첩된 범위 사이에서 작업의 모든 부분이 롤백되었는지 확인하는 플래그 역할을 합니다. 솔루션의 사용자 지정 예외 사용에 대한 자세한 내용은 사용자 지정 예외를 참조하세요. 범위에 대한 자세한 내용은 범위 셰이프를 구성하는 방법을 참조하세요.
분리된 오케스트레이션 패턴
비즈니스 프로세스 관리 솔루션 디자인에서는 오케스트레이션을 최대한 분리합니다. 오케스트레이션을 분리하면 솔루션의 각 파트에 대해 버전을 쉽게 관리하고 다른 서버나 그룹으로 파트를 간단하게 이동할 수 있습니다. 주문 브로커와 주문 관리자 간의 관계에 대한 자세한 내용은 프로세스 관리자를 통한 OrderBroker 오케스트레이션 및 주문 흐름의 처리를 참조하세요.
오류 라우팅 패턴
솔루션에서는 새로운 BizTalk Server 오류 보고 기능을 사용합니다. 이 기능은 실패한 메시지를 보고하거나 처리하기 위해 등록 포트로 라우팅합니다. 오류 보고에 대한 일반적인 내용은 실패한 메시지 라우팅 사용을 참조하세요.
필터 패턴
필터 패턴은 특정 처리 조건을 만족하는 메시지를 선택합니다. BizTalk에서는 필터 패턴이 거의 항상 포트에 대한 필터 식으로 사용됩니다. 포트의 필터에 대한 자세한 내용은 수신 메시지 셰이프와 함께 필터 사용을 참조하세요.
인터럽트 가능한 오케스트레이션 패턴
솔루션에서는 먼저 현재 주문을 인터럽트하여 주문 업데이트 또는 취소를 처리합니다. 솔루션의 오케스트레이션에서는 인터럽트 오케스트레이션을 사용하여 인터럽트를 처리합니다. 자세한 내용은 비즈니스 프로세스 관리 솔루션의 인터럽트 처리를 참조하세요.
역방향 직접 파트너 바인딩 패턴
솔루션에서는 직접 바인딩을 반대로 사용하여 주문 관리자에서 주문 처리 단계를 분리합니다. 역방향 직접 바인딩에 대한 자세한 내용은 역방향 직접 파트너 바인딩을 참조하세요.
메시지 브로커 패턴
메시지 브로커 패턴을 사용하면 솔루션에서 메시지 대상을 확인할 수 있으므로 보낸 사람이 대상을 몰라도 됩니다. 비즈니스 프로세스 관리 솔루션은 OrderBroker 오케스트레이션을 사용하여 메시지 브로커를 구현합니다. OrderBroker 오케스트레이션은 주문을 받고, 주문되는 서비스 유형을 결정하고, 주문을 올바른 주문 관리자로 라우팅합니다. OrderBroker의 메시지 조정에 대한 자세한 내용은 OrderBroker 오케스트레이션에서 처리를 참조하세요.
중첩된 범위 패턴
OrderBroker 오케스트레이션은 지속성 지점을 최소화하고 효율성을 개선하기 위해 중첩된 범위를 사용합니다. 자세한 내용은 OrderBroker 오케스트레이션의 처리에서 "중첩된 범위를 사용하여 성능 향상"을 참조하세요.
인스턴스별 파이프라인 구성
솔루션에서는 기본 파이프라인을 사용하지만 새 인스턴스별 파이프라인 구성을 다양하게 활용하여 메시지에 대한 봉투(Envelope)를 지정합니다. 자세한 내용은 비즈니스 프로세스 관리 솔루션의 파이프라인 및 구성 요소를 배포하는방법을 참조하세요.
프로세스 관리자 패턴
솔루션에서는 비교적 일반적인 주문 관리자를 사용하여 주문 처리 단계의 흐름을 제어합니다. 이 방법은 비즈니스 논리를 주문 프로세스 관리와 구분하는 데 유용합니다. OrderManager 오케스트레이션이 프로세스 관리자로 작동하는 방법에 대한 자세한 내용은 프로세스 관리자 논리를 참조하세요.
오케스트레이션 종료 지점의 Terminate 셰이프
몇몇 오케스트레이션에서는 오류 발생 시 해당 지점에서 정상적으로 종료될 수 있는 경우에도 Terminate 셰이프를 사용하여 종료합니다. Terminate 셰이프를 사용하면 실패한 인스턴스와 오류를 추적할 수 있습니다. 자세한 내용은 사용자 지정 예외를 참조하세요.
변환기 패턴
번역기의 엔터프라이즈 패턴( 즉, 메시지를 한 양식에서 다른 양식으로 변환)은 대부분 BizTalk 맵으로 변환됩니다. BizTalk 지도에 대한 일반적인 내용은 BizTalk Mapper를 사용하여 지도 만들기를 참조하세요.
버전 관리 패턴
비즈니스 프로세스 관리 솔루션은 오케스트레이션을 분리하고 스키마 네임스페이스에서 버전 번호 매기기를 사용하여 솔루션 구성 요소의 버전 관리를 간소화하도록 디자인되었습니다. 자세한 내용은 비즈니스 프로세스 관리 솔루션 버전 관리를 참조하세요.