중개 서비스 응용프로그램은 해당 서비스를 이용하려는 기존 서비스(제공자) 및 클라이언트(요청자) 간에 전달되는 메시지를 차단하여 수정합니다. 중개 서비스는 중개 플로우가 있는 중개 모듈을 사용하여 구현됩니다.
중개 모듈은 WebSphere® Enterprise Service Bus 또는 WebSphere Process Server에 배치될 수 있습니다.
서비스 지향 아키텍처(SOA)에서 서비스는 비즈니스 응답 시스템을 작성하기 위해 임시방편으로 재사용 및 결합될 수 있는 비즈니스 기능을 표시합니다. 이 서비스는 서로 직접 연결되지 않고 느슨하게 연결되어 있습니다.
이 주제에 포함된 개념 설명을 위해 주식 시세를 제공하는 단순 중개 서비스에 대한 예제를 사용합니다. 클라이언트 응용프로그램은 중개 서비스에 주식 기호 및 고객 ID를 포함한 조회를 제공하여 해당 조회를 처리합니다. 고객의 등록 레벨을 결정하고, 등록 레벨에 따라 조회를 적합한 서비스 제공자에게 라우트합니다. 서비스 제공자가 리턴한 시세는 클라이언트 응용프로그램에 리턴되기 전에 고객의 우선 통화로 변환됩니다.
두 개의 외부 서비스 제공자의 서로 다른 인터페이스를 사용하고 클라이언트 응용프로그램에 단일 인터페이스를 노출하기 위해 중개 서비스를 사용합니다. 비즈니스 프로세스를 모델링하지 않고 온디맨드 방식으로 변환하여 서비스를 신속하게 빌드해야 합니다.
주식 시세 예제
주식 시세 예제에서 이들은 어셈블리 편집기에서와 같이 중개 모듈의 파트입니다.
서비스는 인터페이스를 통해 해당 비즈니스 기능에 액세스를 제공하여 서비스를 사용 또는 호출할 수 있습니다. 중개 모듈 및 비즈니스 통합 모듈에는 내보내기에 인터페이스가 있어 모듈을 호출할 수 있습니다. 인터페이스는 호출할 수 있는 조작 및 전달되는 데이터(예: 입력 인수, 리턴값 및 예외)를 정의합니다. 중개 플로우 컴포넌트에서 이 데이터는 메시지 형식으로 전달됩니다.
중개 플로우 컴포넌트에서 서비스 요청자가 내보내기를 통해 중개에 액세스할 수 있는 인터페이스는 소스 인터페이스라고 명명됩니다.
중개 플로우 컴포넌트는 서비스를 호출하기 위해 가져오기로 사용되는 인터페이스를 지정하는 참조를 통해 서비스 제공자(또는 가져오기)에 액세스합니다. 중개 플로우 컴포넌트에서 이 참조는 대상 참조라 명명됩니다.
주식 시세 예제
주식 시세 예제에서 사용하는 참조 및 인터페이스는 다음과 같습니다.
주식 시세 예제
주식 시세 예제에서 StockQuote_MediationFlowComponent는 중개 플로우 컴포넌트로서, 고객 ID 및 기호를 입력으로 승인하고 메시지를 처리하며 고객의 우선 통화로 시세를 리턴합니다. 중개 플로우 컴포넌트의 파트는 다음과 같습니다.
중개 플로우는 입력 메시지 수신 시 실행되는 일련의 처리 단계로 구성되어 있습니다. 중개 플로우는 처리 단계를 정의하는 다수의 중개 기본요소를 포함하여 중개 플로우 편집기에서 작성됩니다. 연결은 중개 기본요소 간 메시지 플로우를 표시합니다.
주식 시세 예제
주식 시세 예제에서 중개 플로우는 다음의 조작 연결로 정의됩니다.
자세한 정보는 관련 링크 아래에 있는 주제 "중개 플로우 편집기" 및 "요청 및 응답 플로우 빌드"를 참조하십시오.
.중개 플로우는
일련의 중개 기본요소로 구성되어 있어
처리 단계를 정의합니다. 중개 기본요소는 메시지를 수신 및 처리하고, 처리된 메시지를 플로우의
노드 또는 다음 기본요소에 전달합니다. 예를 들어,
데이터베이스 참조 기본요소는 데이터베이스에서 값을 검색하여
메시지에 설정합니다. 이미 만들어진 중개 기본요소 세트는
중개 플로우 편집기 팔레트에서 이용할 수 있습니다. 해당 기본요소 세트가 제공하지 않는 중개 기능이 필요한 경우,
사용자 정의 중개 기본요소를 작성하여
사용자의 Java 구현 또는 가져오기한 서비스를 호출할 수 있습니다.
중개 기본요소에는 메시지를 수신하고 전달하는 터미널이 있습니다.
예를 들어, 메시지 로거의 터미널은 다음과 같습니다.
자세한 정보는 관련 링크 아래에 있는 주제 "중개 플로우 편집기" 및 "요청 및 응답 플로우 빌드"를 참조하십시오.
앞서 정의한 바와 같이 메시지는 하나의 응용프로그램이나 서비스에서 다른 응용프로그램이나 서비스로 송신되는 통신입니다. 중개 플로우의 메시지는 서비스 메시지 오브젝트(SMOs)로 표시됩니다.
서비스 메시지 오브젝트는 확장된 비즈니스 오브젝트로서, SOAP 또는 JMS 등의 서비스를 호출하는 데 사용하는 전송 프로토콜 관련 헤더 정보 및 응용프로그램 데이터를 포함합니다. 서비스 메시지 오브젝트는 비즈니스 오브젝트의 응용프로그램 데이터(페이로드 또는 조작 메시지로도 알려짐)가 있는 본문 및 추가 컨텍스트 정보가 있는 헤더로 구성되어 있습니다. 메시지의 요소에 액세스하려면 XPath 1.0 식을 사용할 수 있습니다. 다음 그림은 서비스 메시지 오브젝트를 표시합니다.
인터페이스의 비즈니스 오브젝트 및 XPath 1.0 조건 간의 관계 예제는 관련 타스크 아래에 있는 주제 "요청 및 응답 플로우 빌드"에서 "XPath 식 빌드"를 참조하십시오.
대부분의 중개 기본요소에는 XPath 1.0 식을 사용하여 지정한 특성이 있습니다(예: 루트 특성은 XPath 1.0 식을 사용하여 처리에 필요한 기본요소에 사용할 수 있는 메시지 파트를 지정). XPath 1.0 식은 메시지에서 하나 이상의 필드를 식별하는 데 사용하고, 해당 필드는 값을 지정하여 필터링하거나 선택하는 데 사용할 수 있습니다.
인터페이스의 비즈니스 오브젝트 및 XPath 1.0 조건 간의 관계 예제는 관련 타스크 아래에 있는 주제 "요청 및 응답 플로우 빌드"에서 "XPath 식 빌드"를 참조하십시오.
일반적으로 서로 다른 서비스의 인터페이스 및 조작은 동일하지 않으며, 소스에서의 서비스 메시지 오브젝트는 대상이 허용할 수 있는 형식으로 변환되어야 합니다. XSL 변환 중개 기본요소는 소스 및 대상 메시지 유형이 다를 때 필요합니다.
중개 플로우 편집기에서 메시지를 변환하려면 변환할 메시지의 범위를 XPath 1.0 식으로 정의하십시오. 그런 다음 XML 맵핑 편집기를 사용하여 소스 및 대상 서비스 메시지 오브젝트를 맵핑하십시오.