Application Server는 JMS 연결 풀링 및 페일오버를 지원합니다. Sun Java System Application Server는 JMS 연결을 자동으로 풀링합니다. 주소 목록 동작 속성이 random(기본값)이면 Application Server는 JMS 호스트 목록에서 무작위로 기본 브로커를 선택합니다. 페일오버가 발생하면 MQ는 로드를 투명하게 다른 브로커로 전송하고 JMS 의미를 유지 관리합니다. JMS 유형이 LOCAL 유형인 경우 주소 목록 동작 속성의 기본값은 priority입니다.
Application Server가 연결이 끊어졌을 때 기본 브로커에 다시 연결하려고 시도할지 여부를 지정하려면 다시 연결 확인란을 선택합니다. 이 옵션을 선택한 상태에서 기본 브로커가 다운되면 Application Server는 JMS 호스트 목록의 다른 브로커로 다시 연결하려고 시도합니다.
다시 연결을 선택한 경우 다음 속성도 지정하십시오.
주소 목록 동작: 연결 시도가 JMS 호스트 목록에 있는 주소 순서대로 수행될지(priority) 또는 무작위로 수행될지(random) 여부. Priority로 설정하면 Java Message Service는 JMS 호스트 목록에 지정된 첫 번째 MQ 브로커에 연결하려고 시도한 후 첫 번째 브로커를 사용할 수 없는 경우에만 다른 브로커를 사용합니다. Random으로 설정하면 Java Message Service는 JMS 호스트 목록에서 무작위로 MQ 브로커를 선택합니다. 동일한 연결 팩토리를 사용하여 연결을 시도하는 클라이언트가 많을 경우 이 설정을 사용하여 클라이언트가 모두 동일한 주소에 연결을 시도하지 못하도록 합니다.
주소 목록 반복: Java Message Service가 연결을 설정하거나 다시 설정하기 위해 JMS 호스트 목록 전체를 반복하는 횟수. 값 -1은 횟수에 제한이 없음을 나타냅니다.
다시 연결 시도: 클라이언트 런타임에서 JMS 호스트 목록의 다음 주소로 연결을 시도하기 전에 목록의 각 주소에 연결 또는 다시 연결을 시도하는 횟수. 값 -1은 재연결 시도 횟수에 제한이 없음을 나타냅니다. 클라이언트 런타임은 성공할 때까지 첫 번째 주소에 연결을 시도합니다.
다시 연결 간격: 다시 연결 시도 간격(초). JMS 호스트 목록의 각 주소에 대한 다시 연결 시도와 목록의 후속 주소에 이 값이 적용됩니다. 이 시간 간격이 너무 짧을 경우 브로커가 복구할 시간이 없습니다. 너무 길 경우에는 지연이 지나치게 길게 느껴질 수 있습니다.
JMS 연결 팩토리 설정을 사용하여 이러한 설정을 대체할 수 있습니다. 자세한 내용은 Sun Java System Application Server 9.1 관리 설명서의 JMS 연결 팩토리를 참조하십시오.
Message-Driven Bean에 대한 sun-ejb-jar.xml 파일에서 activation-config-property 요소를 사용하여 jmsra 자원 어댑터의 ActivationSpec 등록 정보를 구성할 수 있습니다. Message-Driven Bean(EndPointFactory)이 배포될 때마다 커넥터 런타임 엔진이 이 등록 정보를 찾아 자원 어댑터에서 적절하게 구성합니다. Sun Java System Application Server 9.1 Application Deployment Guide의 activation-config-property를 참조하십시오.
Application Server는 동일한 ClientID를 갖는 Message-Driven Bean에 메시지가 임의로 전달되도록 합니다. 영구 가입자에게는 ClientID가 필요합니다.
ClientID가 구성되지 않은 비영구 가입자의 경우 동일한 항목에 가입된 특정 Messag-Driven Bean의 모든 인스턴스가 동일한 것으로 간주됩니다. Message-Driven Bean이 여러 Application Server 인스턴스에 배포된 경우에는 Message-Driven Bean 중 하나만 메시지를 수신합니다. 여러 Message-Driven Bean이 동일한 항목에 가입된 경우 Message-Driven Bean별로 하나의 인스턴스가 메시지 사본을 수신합니다.
동일한 대기열을 사용하는 여러 사용자를 지원하려면 물리적 대상의 maxNumActiveConsumers 등록 정보를 큰 값으로 설정하십시오. 이 등록 정보를 설정할 경우 Sun Java System Message Queue 소프트웨어에서는 설정된 숫자만큼의 Message-Driven Bean이 동일한 대기열의 메시지를 사용하도록 허용됩니다. 메시지는 Message-Driven Bean에 임의로 전달됩니다. maxNumActiveConsumers가 -1로 설정되면 사용자 수에 제한이 없습니다.
기본적으로 로컬 전달을 사용하려면 addresslist-behavior를 priority로 설정합니다. 이 설정은 AddressList의 첫 번째 브로커가 먼저 선택되도록 지정합니다. 첫 번째 브로커는 로컬에 함께 존재하는 Message Queue 인스턴스입니다. 이 브로커를 사용할 수 없으면 AddressList에 나열된 순서대로 브로커에 대한 연결을 시도합니다. 이 설정은 클러스터에 속한 Application Server 인스턴스의 기본값입니다.
개발자 프로필에서는 클러스터링 기능을 사용할 수 없습니다. 프로필에 대한 자세한 내용은 Sun Java System Application Server 9.1 관리 설명서의 사용 프로필을 참조하십시오.
다음 두 가지 수준의 JMS 구성 요소 가용성이 있습니다.
서비스 가용성 – 이 수준에서는 JMS 서비스의 가용성이 중요하지만 메시지를 잠시 사용할 수 없는 경우에는 중요하지 않습니다. 서비스를 제공하는 사용 가능한 새 인스턴스로 연결이 페일오버되는 한, JMS 구성 요소는 서비스가 사용 가능하고 정상적으로 작동하는 것으로 간주합니다. 이 수준의 가용성에 대해서는 Sun Java System Application Server 9.1 Developer’s Guide 의 Connection Failover에서 설명합니다.
데이터 가용성 – 이 수준에서는 서비스 가용성과 지속성 메시지 가용성이 모두 필요합니다. 단일 전달의 JMS 의미 및 메시지 순서 역시 이 수준에서 처리됩니다.
JMS(Java Message Service)를 구성하는 Sun Java System Message Queue 클러스터에 데이터 가용성을 활성화할 수 있습니다. 메시지는 공통 지속성 저장소에 유지되며 고가용성 데이터베이스(HADB)가 설치되어 있고 엔터프라이즈 프로필이 선택된 경우 고가용성 데이터베이스와 클러스터의 다른 모든 브로커 인스턴스에서 사용할 수 있습니다. 프로필에 대한 자세한 내용은 Sun Java System Application Server 9.1 관리 설명서의 사용 프로필을 참조하십시오. 해당 브로커에 대한 데이터 가용성을 활성화하려면 먼저 Application Server 인스턴스의 가용성을 활성화해야 합니다.
개별 응용 프로그램 및 모듈은 JMS 가용성을 제어하거나 대체할 수 없습니다.
데이터 가용성을 활성화하려면 관리 콘솔의 관련 구성 아래에서 가용성 서비스 구성 요소를 선택합니다. 가용성 서비스 상자를 선택합니다. JMS 서비스에 대한 가용성을 활성화하려면 JMS 가용성 탭을 선택한 다음 가용성 서비스 상자를 선택합니다. 일관된 동작을 위해 하나의 Application Server 클러스터에 속한 모든 인스턴스의 인스턴스 가용성 및 JMS 가용성 설정은 동일합니다. 자세한 내용은 Sun Java System Application Server 9.1 고가용성 관리 설명서를 참조하십시오.
개발자 프로필에서는 클러스터링 기능을 사용할 수 없습니다. 프로필에 대한 자세한 내용은 Sun Java System Application Server 9.1 관리 설명서의 사용 프로필을 참조하십시오.