JMS를 사용한 WebSphere Application Server의 비동기 메시징
WebSphere® Application Server는 JMS(Java™ Message Service) 프로그래밍 인터페이스를 기반으로 하는 통신 방법으로 비동기 메시징을 지원합니다. JMS 인터페이스는 Java 프로그램(클라이언트 및 Java EE(Java Platform, Enterprise Edition) 애플리케이션)이 비동기 요청을 JMS 메시지로 작성하고, 전송하고, 수신하고, 읽을 수 있는 일반적인 방법을 제공합니다.
JMS API를 사용한 비동기 메시징에 대한 기본 지원은 JMS 클라이언트가 JMS 인터페이스 및 JMS 제공자 기능에 대한 액세스 방법을 정의하는 연관된 시멘틱의 일반 세트를 제공합니다. 이 지원을 통해 WebSphere 제품 Java EE 애플리케이션은 JMS 클라이언트로서 JMS 대상(큐 또는 주제)을 사용하여 다른 JMS 클라이언트와 비동기로 메시지를 교환할 수 있습니다. Java EE 애플리케이션은 지점간 메시징에 대해 JMS 큐 대상을 사용하고 공개 및 등록 메시징에 대해 JMS 주제 대상을 사용할 수 있습니다. Java EE 애플리케이션은 대상에서 명시적으로 메시지에 대해 폴한 다음, 비즈니스 로직 Bean(엔터프라이즈 Bean)에서 처리할 메시지를 검색할 수 있습니다.
기본 JMS 및 XA 지원을 통해, Java EE 애플리케이션은 표준 JMS 호출을 사용하여 메시지를 처리합니다(임의의 응답 또는 아웃바운드 메시징 포함). 엔터프라이즈 Bean은 전송자 Bean 역할로 응답을 처리하거나 수신 메시지를 수신하는 엔터프라이즈 Bean에서 처리할 수 있습니다. 선택적으로, 이 프로세스는 트랜잭션 범위 내에서 2단계 확약을 사용할 수 있습니다. 이러한 비동기 메시징 기능 레벨을 Bean 관리 메시징이라고 하며, 엔터프라이즈 Bean에 메시지 전달 인프라에 대한 완전한 제어를 제공합니다(예: 연결 및 세션 풀 관리). 일반 컨테이너는 Bean 관리 메시징에서 어떤 역할도 가지지 않습니다.
WebSphere Application Server는 또한 메시지 구동 Bean(EJB(Enterprise JavaBeans) 2.0 스펙에 정의된 엔터프라이즈 Bean의 유형) 및 JMS 리스너(JMS Application Server 기능의 일부)를 사용한 자동 비동기 메시징을 지원합니다. 메시지는 JMS 대상(또는 트랜잭션 내)에서 자동으로 검색된 후 Java EE 애플리케이션의 메시지 구동 Bean에 전송되므로, 애플리케이션이 JMS 대상을 명시적으로 폴할 필요가 없습니다.