비즈니스 프로세스 관리 솔루션 버전 관리
비즈니스 프로세스 관리 솔루션은 필요한 경우 단계를 바꿀 수 있도록 디자인되었습니다. 또한 스키마 버전을 보다 편리하게 관리할 수 있는 방법을 제공합니다.
비즈니스 프로세스를 단계로 나누는 방법에 대한 자세한 내용은 비즈니스 프로세스 관리 솔루션의 일부 디자인 원칙을 참조하세요.
참고
솔루션의 요소는 메시지 구조에 따라 달라집니다. 메시지 구조를 변경하는 경우 오케스트레이션의 상당 부분을 변경해야 합니다.
배포된 솔루션에서 어셈블리를 업데이트하는 방법에 대한 일반적인 지침과 업데이트를 처리하기 위한 스크립트 작성 지침은 BizTalk 애플리케이션 업데이트를 참조하세요.
단계 추가, 바꾸기 또는 제거
주문 처리 단계 오케스트레이션에는 비즈니스 프로세스를 구현하는 코드와 솔루션에서 작동할 수 있도록 인프라를 제공하는 코드라는 두 가지 종류의 코드가 포함되어 있습니다. 두 단계 오케스트레이션인 CableOrder1 및 CableOrder2에서 비즈니스 프로세스 코드는 "비즈니스 처리"라는 레이블이 지정된 그룹 셰이프 내에 있습니다.
새 단계를 만드는 가장 쉬운 방법은 단계 중 하나를 복사한 다음 "Business Processing" 그룹의 코드만 사용자 코드로 바꾸고 인프라 코드는 그대로 유지하는 것입니다.
참고
CableOrder2 오케스트레이션에는 업데이트 기록 보내기 셰이프 주변의 두 번째 "비즈니스 처리" 그룹이 있습니다. Send 셰이프는 효율적인 송신 범위의 일부입니다. 자세한 내용은 OrderBroker 오케스트레이션의 처리에서 "중첩된 범위를 사용하여 성능 향상"을 참조하세요. 그룹 셰이프는 scope 셰이프의 일부와 겹칠 수 없으므로 두 번째 그룹에는 비즈니스 프로세스 코드의 일부임을 나타내는 레이블이 지정됩니다.
새 오케스트레이션의 필터 식을 시퀀스의 해당 번호로 설정해야 합니다. OrderManager는 스테이지 번호가 1로 시작하고 다음 단계마다 하나씩 증가된다고 가정합니다(1, 2, 3 ...). 세 번째 단계를 필터링하려면 필터 식을 다음과 같이 설정합니다.
(Microsoft.Samples.BizTalk.SouthridgeVidoe.Schemas.Stage == 3)
이 솔루션에서는 BAM API를 사용하여 주문 처리 단계를 비롯한 솔루션의 이벤트를 추적합니다. 첫 번째 단계에서 BAM 활동을 시작하고 최종 단계에서 종료합니다. 예외가 있는 경우 솔루션의 핸들러가 관련 BAM 활동을 종료합니다. BAM은 모니터링을 위해 효과적으로 비연속 작업을 하나의 연속된 보기로 리어셈블합니다.
구성 변경
사용자 변경 작업으로 인해 단계 수가 증가하거나 감소하는 경우 Enterprise SSO(Single Sign-On) 보안 저장소에 저장된 구성 정보를 변경해야 합니다.
애플리케이션을 배포하지 않은 경우 CreateSouthridgeVideoApplication.cmd 스크립트 파일에서 TotalStages 에 대한 구성 설정을 수정할 수 있습니다. 배포하는 동안 스크립트가 실행될 때 값이 변경됩니다.
응용 프로그램을 이미 배포한 경우 SDK\Common\SsoApplicationConfig 폴더에 있는 명령줄 유틸리티 BTSScnSSOApplicationConfig를 실행하여 값을 변경할 수 있습니다. 총 단계 수를 3으로 설정하려면 다음 명령줄을 사용합니다.
BTSScnSSOApplicationConfig -set SouthRidgeVideo.CableOrder ConfigProperties TotalStages 3
솔루션은 구성 값을 캐시하므로 새로 고침 간격이 지나 새 값이 적용될 때까지 기다려야 합니다.
스키마 버전 관리
BizTalk는 스키마를 포함하는 어셈블리의 최신 버전에서 스키마를 가져옵니다. 즉, 새 버전의 스키마를 만드는 경우 새 버전이 이전 버전의 스키마를 모두 바꿉니다. 이 기능은 트랜잭션이 단기인 경우 제대로 작동합니다. 그러나 비즈니스 프로세스 관리 솔루션의 트랜잭션은 수명이 길며 주문이 완료되는 데 최대 1년이 걸릴 수 있습니다.
여러 버전의 스키마를 사용할 수 있도록 하기 위해 솔루션의 각 스키마는 해당 네임스페이스에 버전 번호를 포함합니다. 예를 들어 Order 스키마의 네임스페이스는 다음과 같습니다.
http://Microsoft.Samples.BizTalk.SouthridgeVideo.Schemas.Order.v1
네임스페이스가 스키마를 식별하고 버전 번호를 포함하면 네임스페이스가 해당 스키마에 고유하게 되므로 새 스키마가 이전 버전과 구분됩니다. 따라서 이전 스키마를 대체하지 않고 새 스키마를 사용할 수 있습니다.