Sun Java System Message Queue 3.7 UR1 관리 설명서

16장 관리 객체 속성 참조

이 장에서는 관리 대상 객체의 속성에 대한 참조 정보를 제공합니다. 이 장은 다음 내용으로 구성되어 있습니다.

연결 팩토리 속성

연결 팩토리 객체의 속성은 다음 절에 설명된 범주로 분류됩니다.

연결 처리

표 16–1에는 연결 처리에 사용되는 연결 팩토리 속성이 나열되어 있습니다.

표 16–1 연결 처리에 대한 연결 팩토리 속성

속성 

유형 

기본값 

설명 

imqAddressList

문자열 

기존 Message QueueTM 3.0 주소(있는 경우), 없는 경우에는 표 16–2의 첫 번째 항목

브로커 주소 목록 

이 목록은 쉼표로 구분된 하나 이상의 브로커 주소로 구성됩니다. 각 주소는 클라이언트가 연결할 수 있는 브로커 인스턴스의 호스트 이름, 포트 번호 및 연결 서비스를 지정하거나 나타냅니다. 주소 구문은 연결 서비스 및 포트 할당 방법에 따라 다릅니다. 자세한 내용은 아래를 참조하십시오.  

imqAddressListBehavior

문자열 

PRIORITY

브로커 주소에 연결을 시도하는 순서:  

    PRIORITY: 주소 목록에 지정된 순서


    RANDOM: 임의의 순서



주 –

여러 클라이언트가 동일한 연결 팩토리를 공유하는 경우 임의의 연결 순서를 지정하여 모든 클라이언트가 같은 주소로 연결하는 것을 막을 수 있습니다.


imqAddressListIterations

정수 

5

연결 설정 또는 재설정을 시도하며 주소 목록을 반복하는 횟수 

-1은 무제한 반복을 의미합니다.

imqPingInterval

정수 

30

클라이언트와 브로커 간 연결을 테스트하는 간격(초) 

0 또는 -1을 설정하면 연결 테스트를 주기적으로 실행할 수 없습니다.

imqReconnectEnabled

부울 

false

끊어진 연결을 다시 설정하시겠습니까?  

imqReconnectAttempts

정수 

0

다음 주소로 이동하기 전에 주소 목록의 각 주소에 연결 또는 재연결을 시도하는 횟수 

-1은 무제한 연결 시도를 의미하며 연결될 때까지 첫 번째 주소에 연결하기 위해 반복 시도합니다.

imqReconnectInterval

긴 정수 

3000

재연결 시도 간격(밀리초) 

이 값은 지정된 주소에 대한 연속적인 시도와 목록의 연속적인 주소에 대해 모두 적용됩니다.  


주 –

값이 너무 작으면 브로커를 복구하는 시간이 충분하지 못할 수도 있습니다. 값이 너무 크면 연결 시 너무 오래 지연될 수 있습니다.


imqSSLIsHostTrusted

부울 

true

브로커가 제공하는 모든 인증서를 신뢰합니까?  

false이면 Message Queue 클라이언트 런타임은 제공되는 모든 인증서를 검증합니다. 인증서 서명자가 클라이언트의 트러스트 저장소에 없는 경우 검증이 실패합니다.

true이면 인증서 검증이 생략됩니다. 예를 들어, 자체 서명된 인증서를 사용하는 소프트웨어 테스트 중에 유용할 수 있습니다.

참고: 인증 기관의 서명된 인증서를 사용하려면 이 속성을 false로 설정합니다.

imqAddressList 속성 값은 연결할 하나 이상의 브로커 주소를 지정하는 쉼표로 구분된 문자열입니다. 각 주소의 일반 구문은 다음과 같습니다.

   
scheme://address

여기서 scheme표 16–2의 첫 번째 열에 표시되는 주소 지정 체계 중 하나를 식별하며 address는 브로커 주소 자체를 나타냅니다. 표의 마지막 열에 표시된 대로, 주소를 지정하는 정확한 구문은 주소 지정 체계에 따라 다릅니다.

표 16–2 메시지 브로커 주소 지정 체계

체계 

서비스 

구문 

설명 

mq

jms 또는 ssljms

[hostName][:portNumber ][/serviceName]

jms 또는 ssljms 연결 서비스에 대해 동적으로 포트를 할당합니다.

주소 목록 항목은 Message Queue 포트 매퍼의 호스트 이름 및 포트 번호를 지정합니다. 포트 매퍼 자체는 연결에 사용할 포트를 동적으로 할당합니다.  

기본값:

    hostName = localhost


    portNumber = 7676


    serviceName = jms


ssljms 연결 서비스의 경우, 모든 변수를 명시적으로 지정해야 합니다.

mqtcp

jms

hostName:portNumber /jms

jms 연결 서비스를 사용하여 지정된 포트에 연결합니다.

포트 매퍼를 우회하고 지정된 호스트 이름 및 포트 번호로 TCP 연결을 직접 설정합니다.

mqssl

ssljms

hostName:portNumber /ssljms

ssljms 연결 서비스를 사용하여 지정된 포트에 연결합니다.

포트 매퍼를 우회하고 지정된 호스트 이름 및 포트 번호로 보안 SSL 연결을 직접 설정합니다.

http

httpjms

http://hostName: portNumber/contextRoot /tunnel

여러 브로커 인스턴스가 동일한 터널 서블릿을 사용하는 경우 다음 구문을 사용하여 임의로 선택된 인스턴스가 아니라 특정 브로커 인스턴스에 연결합니다.  

http://hostName: portNumber/contextRoot /tunnel?

    ServerName=hostName :instanceName


httpjms 연결 서비스를 사용하여 지정된 포트에 연결합니다.

지정된 URL의 Message Queue 터널 서블릿에 HTTP 연결을 설정합니다. 브로커가 HTTP 터널 서블릿에 액세스하도록 구성해야 합니다.

https

httpsjms

https://hostName: portNumber/contextRoot /tunnel

여러 브로커 인스턴스가 동일한 터널 서블릿을 사용하는 경우 다음 구문을 사용하여 임의로 선택된 인스턴스가 아니라 특정 브로커 인스턴스에 연결합니다.  

https://hostName: portNumber/contextRoot /tunnel?

    ServerName=hostName :instanceName


httpsjms 연결 서비스를 사용하여 지정된 포트에 연결합니다.

지정된 URL의 Message Queue 터널 서블릿에 보안 HTTPS 연결을 설정합니다. 브로커가 HTTPS 터널 서블릿에 액세스하도록 구성해야 합니다.

표 16–3 메시지 브로커 주소 예

서비스 

브로커 호스트 

포트 

주소 예 

지정하지 않음 

지정하지 않음 

지정하지 않음 

주소 없음(mq://localHost:7676/jms)

지정하지 않음 

지정된 호스트 

지정하지 않음 

myBkrHost (mq://myBkrHost:7676/jms)

지정하지 않음 

지정하지 않음 

지정된 포트 매퍼 포트 

1012 (mq://localHost:1012/jms)

ssljms

로컬 호스트 

표준 포트 매퍼 포트 

mq://localHost:7676/ssljms

ssljms

지정된 호스트 

표준 포트 매퍼 포트 

mq://myBkrHost:7676/ssljms

ssljms

지정된 호스트 

지정된 포트 매퍼 포트 

mq://myBkrHost:1012/ssljms

jms

로컬 호스트 

지정된 서비스 포트 

mqtcp://localhost:1032/jms

ssljms

지정된 호스트 

지정된 서비스 포트 

mqssl://myBkrHost:1034/ssljms

httpjms

해당 없음 

해당 없음 

http://websrvr1:8085/imq/tunnel

httpsjms

해당 없음 

해당 없음 

https://websrvr2:8090/imq/tunnel

클라이언트 아이디

표 16–4에는 클라이언트 아이디에 대한 연결 팩토리 속성이 나열되어 있습니다.

표 16–4 클라이언트 식별에 대한연결 팩토리 속성

속성 

유형 

기본값 

설명 

imqDefaultUsername

문자열 

guest

브로커 인증 관련 기본 사용자 이름 

imqDefaultPassword

문자열 

guest

브로커 인증 관련 기본 비밀번호 

imqConfiguredClientID

문자열 

null

관리상 구성된 클라이언트 식별자 

imqDisableSetClientID

부울 

false

setClientID 메소드를 사용하여 클라이언트가 클라이언트 식별자를 변경하지 못하도록 방지하시겠습니까?

안정성 및 흐름 제어

표 16–5에는 안정성 및 흐름 제어에 사용되는 연결 팩토리 속성이 나열되어 있습니다.

표 16–5 안정성 및 흐름 제어에 대한 연결 팩토리 속성

속성 

유형 

기본값 

설명 

imqAckTimeout

문자열 

0

예외 발생 전 브로커 확인 대기 최대 시간(밀리초) 

0은 시간 제한이 없음(무기한 대기)을 의미합니다.


주 –

경우에 따라서는 값이 너무 낮을 경우 조기 시간 초과가 발생할 수 있습니다. 예를 들어, 보안(SSL) 연결을 사용하는 LDAP 사용자 저장소에 대한 사용자의 초기 인증에는 30초 이상이 소요될 수 있습니다.


imqConnectionFlowCount

정수 

100

측정된 일괄 처리의 페이로드 메시지 수 

페이로드 메시지를 클라이언트로 전달하는 작업이 이 메시지 수 이후에 일시적으로 중단되므로 누적된 제어 메시지를 전달할 수 있습니다. 클라이언트 런타임의 알림 메시지가 도착하면 페이로드 메시지 전달이 다시 시작되어 지정된 수에 이를 때까지 계속됩니다.  

0은 메시지 전달 측정을 사용하지 않도록 설정하므로 페이로드 메시지 트래픽이 많을 경우 Message Queue 제어 메시지가 차단될 수 있습니다.

imqConnectionFlowLimitEnabled

부울 

false

연결 수준에서 메시지 흐름을 제한합니까?  

imqConnectionFlowLimit

정수 

1000

사용을 위해 전달 및 버퍼링할 연결당 최대 메시지 수 

보류 중인 사용하지 않은 페이로드 메시지 수(imqConnectionFlowCount에서 제어하는 흐름 측정에 따름)가 이 제한을 초과하면 연결 시 메시지 전달이 중지됩니다. 보류 중인 메시지 수가 제한보다 적을 때에만 전달이 다시 시작됩니다. 따라서 보류 중인 메시지가 너무 많아서 메모리 부족이 발생하는 것을 방지할 수 있습니다.

이 속성은 imqConnectionFlowLimitEnabledfalse인 경우 무시됩니다.

imqConsumerFlowLimit

정수 

100

사용을 위해 전달 및 버퍼링할 사용자당 최대 메시지 수 

보류 중인 사용하지 않은 페이로드 메시지 수가 해당 사용자에 대해 이 제한을 초과하면 지정된 사용자로의 메시지 전달이 중지됩니다. 사용자에 대한 보류 중인 메시지 수가 imqConsumerFlowThreshold에 지정된 비율보다 낮을 때에만 전달이 다시 시작됩니다. 따라서 여러 사용자가 동일한 연결에 집중되지 않도록 함으로써 각 사용자 간에 로드 균형 조정을 향상시킬 수 있습니다.

대기열 고유의 consumerFlowLimit 속성에 대해 더 낮은 값을 설정하면 이 제한을 대체할 수 있습니다(15 장, 물리적 대상 등록 정보 참조 참조). 한 연결을 통한 모든 사용자로의 메시지 전달은 imqConnectionFlowLimit에 지정된 전체 제한에 따라 달라질 수 있습니다.

imqConsumerFlowThreshold

정수 

50

메시지 전달을 다시 시작하려면 클라이언트 런타임에 버퍼링된 사용자당 메시지 수를 imqConsumerFlowLimit 비율보다 낮게 지정해야 합니다.

대기열 브라우저 및 서버 세션

표 16–6에는 대기열 찾아보기와 서버 세션에 사용되는 연결 팩토리 속성이 나열되어 있습니다.

표 16–6 대기열 브라우저 및 서버 세션에 대한 연결 팩토리 속성

속성 

유형 

기본값 

설명 

imqQueueBrowserMaxMessagesPerRetrieve

정수 

1000

대기열 대상의 내용을 찾아볼 때 한 번에 검색할 최대 메시지 수 


주 –

이 속성은 검색되는 총 메시지 수에는 영향을 주지 않고 클라이언트 런타임에 전달을 위해 청크(적지만 큰 청크 또는 많지만 작은 청크)되는 방법에만 영향을 줍니다. 클라이언트 응용 프로그램은 항상 대기열의 모든 메시지를 받습니다. 속성 값을 변경하면 성능에 영향을 줄 수 있지만, 검색되는 총 데이터 양에는 영향을 주지 않습니다.


imqQueueBrowserRetrieveTimeout

긴 정수 

60000

대기열 대상의 내용을 찾아볼 때 예외 발생 전 메시지 검색 대기 최대 시간(밀리초) 

imqLoadMaxToServerSession

부울 

true

최대 메시지 수를 서버 세션으로 로드합니까?  

값이 false이면 클라이언트는 한 번에 하나의 메시지만 로드합니다.

이 속성은 JMS 응용 프로그램 서버 기능에만 적용됩니다.

표준 메시지 등록 정보

표 16–7에 나열된 연결 팩토리 속성은 Message Queue 클라이언트 런타임에서 JMS(Java Message Service) 사양에 정의된 특정 표준 메시지 등록 정보를 설정할지 여부를 제어합니다.

표 16–7 표준 메시지 등록 정보에 대한 연결 팩토리 속성

등록 정보 

유형 

기본값 

설명 

imqSetJMSXUserID

부울 

false

생성된 메시지에 대해 JMSXUserID 등록 정보(사용자가 전송하는 메시지의 아이디)를 설정합니까?

imqSetJMSXAppID

부울 

false

생성된 메시지에 대해 JMSXAppID 등록 정보(응용 프로그램에서 전송하는 메시지의 아이디)를 설정합니까?

imqSetJMSXProducerTXID

부울 

false

생성된 메시지에 대해 JMSXProducerTXID 등록 정보(메시지가 생성된 트랜잭션의 트랜잭션 아이디)를 설정합니까?

imqSetJMSXConsumerTXID

부울 

false

사용한 메시지에 대해 JMSXConsumerTXID 등록 정보(메시지가 사용된 트랜잭션의 트랜잭션 아이디)를 설정합니까?

imqSetJMSXRcvTimestamp

부울 

false

사용된 메시지에 대해 JMSXRcvTimestamp 등록 정보(메시지가 사용자에게 전달된 시간)를 설정합니까?

메시지 헤더 대체

표 16–8에는 JMS 메시지 헤더 필드 대체에 사용되는 연결 팩토리 속성이 나열되어 있습니다.

표 16–8 메시지 헤더 대체에 대한 연결 팩토리 속성

속성 

유형 

기본값 

설명 

imqOverrideJMSDeliveryMode

부울 

false

클라이언트에서 설정한 전달 모드를 대체하시겠습니까? 

imqJMSDeliveryMode

정수 

2

전달 모드 대체 값: 

1 비지속성

2 지속성

imqOverrideJMSExpiration

부울 

false

클라이언트에서 설정한 만료 시간을 대체하시겠습니까? 

imqJMSExpiration

긴 정수 

0

만료 시간 대체 값(밀리초) 

0은 무제한 만료 시간(메시지 만료 없음)을 의미합니다.

imqOverrideJMSPriority

부울 

false

클라이언트에서 설정한 우선 순위 수준을 대체하시겠습니까? 

imqJMSPriority

정수 

4(일반)

우선 순위 수준 대체 값(0 ~ 9)

imqOverrideJMSHeadersToTemporaryDestinations

부울 

false

임시 대상에 대체를 적용합니까? 

대상 속성

표 16–9에는 대상 관리 객체에 대해 설정할 수 있는 속성이 나열되어 있습니다.

표 16–9 대상 속성

속성 

유형 

기본값 

설명 

imqDestinationName

문자열 

Untitled_Destination_Object

물리적 대상 이름 

대상 이름에는 영숫자 문자(공백 없음)만 사용할 수 있으며 영문자, 밑줄(_) 또는 달러 기호($) 문자로 시작해야 합니다. 대상 이름은 mq로 시작할 수 없습니다.

imqDestinationDescription

문자열 

없음 

대상을 설명하는 문자열 

SOAP 종점 속성

표 16–10에는 SOAP(Simple Object Access Protocol)에서 사용하는 응용 프로그램의 종점 URL 구성에 사용되는 속성이 나열되어 있습니다. 자세한 내용은 Java 클라이언트용 Message Queue 개발 안내서를 참조하십시오.

표 16–10 SOAP 종점 속성

속성 

유형 

기본값 

설명 

imqSOAPEndpointList

문자열 

없음 

공백으로 구분된 메시지를 보낼 SOAP 종점을 나타내는 하나 이상의 URL 목록

각 URL은 서블릿에 연결되어 있어야 SOAP 메시지를 받아서 처리할 수 있습니다.

예:

    http://www.serv1/ http://www.serv2/


목록에서 두 개 이상의 URL을 지정하는 경우 메시지가 모든 URL로 브로드캐스트됩니다.

imqEndpointName

문자열 

Untitled_Endpoint_Object

SOAP 종점 이름

imqEndpointDescription

문자열 

없음 

SOAP 종점을 설명하는 문자열

예:

    My endpoints for broadcast