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

3 참조

13장 명령줄 참조

이 장에서는 Message QueueTM 명령줄 관리 유틸리티 사용에 대한 참조 정보를 제공합니다. 이 장은 다음 내용으로 구성되어 있습니다.

명령줄 구문

Message Queue 명령줄 유틸리티는 쉘 명령입니다. 유틸리티 이름이 명령이고 하위 명령 또는 옵션은 해당 명령에 전달되는 인수입니다. 별도의 명령을 사용하여 유틸리티를 시작하거나 종료할 필요가 없습니다.

모든 명령줄 유틸리티는 다음과 같은 명령 구문을 공유합니다.

   utilityName [subcommand] [commandArgument] [ [-optionName [optionArgument]] … ]

여기서 utilityName은 다음 중 하나입니다.

하위 명령 및 명령 수준의 인수(있는 경우)는 모든 옵션과 인수 앞에 와야 합니다. 옵션 자체는 임의 순서대로 나타날 수 있습니다. 모든 하위 명령, 명령 인수, 옵션 및 옵션 인수는 공백으로 구분됩니다. 옵션 인수 값에 공백이 포함되어 있는 경우 전체 값을 따옴표로 묶어야 합니다. 일반적으로 속성, 값 쌍을 따옴표로 묶는 것이 가장 안전합니다.

기본 브로커를 시작하는 다음 명령은 하위 명령절이 없는 명령줄의 예입니다.

   imqbrokerd

다음은 전체 명령줄의 예입니다.

   imqcmd  destroy dst  -t q  -n myQueue  -u admin  -f  -s

이 명령은 myQueue라는 대기열 대상(대상 유형 q)을 완전 삭제합니다. 인증은 사용자 이름 admin에 대해 수행됩니다. 비밀번호를 묻는 메시지가 표시됩니다. 이 명령은 확인 메시지를 표시하지 않고(-f 옵션) 자동 모드로 수행되며 어떠한 출력도 표시하지 않습니다(-s 옵션).

브로커 유틸리티

브로커 유틸리티(imqbrokerd)는 브로커를 시작합니다. 명령줄 옵션은 현재 브로커 세션에 대해서만 브로커 구성 파일의 값을 무시합니다.

표 13–1에서는 imqbrokerd 명령 옵션과 각 옵션으로 대체되는 구성 등록 정보(있는 경우)를 보여줍니다.

표 13–1 브로커 유틸리티 옵션

옵션 

대체되는 등록 정보 

설명 

-name instanceName

imq.instancename

브로커의 인스턴스 이름

동일한 호스트에서 실행 중인 여러 브로커 인스턴스에는 서로 다른 인스턴스 이름이 있어야 합니다.  

기본값: imqbroker

-port portNumber

imq.portmapper.port

브로커의 포트 매퍼 포트 번호

Message Queue 클라이언트는 이 포트 번호를 사용하여 브로커에 연결합니다. 동일한 호스트에서 실행 중인 여러 브로커 인스턴스에는 서로 다른 포트 매퍼 포트 번호가 있어야 합니다.  

기본값: 7676

-cluster broker1 [ [ , broker2 ] … ]

imq.cluster.brokerlist

브로커를 클러스터에 연결 [브로커 클러스터에만 적용]

지정된 브로커는 imq.cluster.brokerlist 등록 정보의 목록과 병합됩니다. 각 브로커 인수는 다음 형태 중 하나입니다.

    hostName: portNumber


    hostName


    :portNumber


hostName을 생략하는 경우에는 기본값이 localhost입니다. portNumber를 생략하는 경우에는 기본값이 7676입니다.

-Dproperty= value

인스턴스 구성 파일의 해당 등록 정보 

구성 등록 정보 설정 

브로커 구성 등록 정보에 대한 자세한 내용은 14 장, 브로커 등록 정보 참조을 참조하십시오.

주의: 이 옵션을 사용하여 설정한 등록 정보의 형식과 맞춤법에 주의하십시오. 잘못된 값은 알림이나 경고 없이 무시됩니다.

-reset props

없음 

구성 등록 정보 재설정 

브로커의 기존 인스턴스 구성 파일 config.properties를 빈 파일로 바꿉니다. 모든 등록 정보에 기본값이 설정됩니다.

-reset store

없음 

영구 데이터 저장소 재설정 

데이터 저장소의 모든 영구 데이터(지속성 메시지, 영구 가입 및 트랜잭션 정보 포함)를 삭제하여 빈 상태에서 브로커 인스턴스를 시작할 수 있도록 합니다. 이후에 다시 시작할 때 영구 저장소가 재설정되지 않도록 하려면 -reset 옵션을 지정하지 않고 브로커 인스턴스를 다시 시작합니다.

지속성 메시지 또는 영구 가입만 삭제하려면 -reset messages 또는 -reset durables를 대신 사용합니다.

-reset messages

없음 

데이터 저장소에서 지속성 메시지 삭제 

-reset durables

없음 

데이터 저장소에서 영구 가입 삭제 

-backup fileName

없음 

구성 변경 레코드를 파일로 백업

자세한 내용은 구성 변경 기록 관리를 참조하십시오.

-restore fileName

없음 

백업 파일에서 구성 변경 레코드 복원

-backup 옵션을 사용하여 백업 파일을 미리 작성해 두어야 합니다.

자세한 내용은 구성 변경 기록 관리를 참조하십시오.

-remove instance

없음 

브로커 인스턴스 제거 [-force 옵션을 함께 지정한 경우가 아니면 사용자의 확인이 필요합니다.]

인스턴스 구성 파일, 로그 파일, 영구 저장소 및 인스턴스와 관련된 기타 파일 및 디렉토리를 삭제합니다.  

-password keyPassword

imq.keystore.password

SSL 인증서 키 저장소의 비밀번호 [이 옵션은 더 이상 사용되지 않으며 추후에 제거될 것입니다. 비밀번호를 생략하거나(대화식으로 비밀번호를 묻는 메시지 표시) -passfile 옵션을 사용하여 비밀번호를 포함하는 파일을 지정합니다. ]

-dbuser userName

imq.persist.jdbc.user

JDBC 기반 영구 데이터 저장소의 사용자 이름

-dbpassword dbPassword

imq.persist.jdbc.password

JDBC 기반 영구 데이터 저장소의 비밀번호

-ldappassword ldapPassword

imq.user_repository.ldap.password

LDAP 사용자 저장소의 비밀번호

-passfile filePath

imq.passfile.enabledimq.passfile.dirpathimq.passfile.name

비밀번호 파일 위치

브로커의 imq.passfile.enabled 등록 정보를 true로 설정하고 imq.passfile.dirpath를 비밀번호 파일을 포함하는 경로로 설정하며 imq.passfile.name을 파일 이름 자체로 설정합니다.

자세한 내용은 비밀번호 파일을 참조하십시오.

-shared

imq.jms.threadpool_model

공유 스레드 풀 모델을 사용하여 jms 연결 서비스 구현

연결 간에 예외 스레드가 공유되므로 지원되는 연결 수가 증가합니다.  

브로커의 imq.jms.threadpool_model 등록 정보를 shared로 설정합니다.

-javahome path

없음 

대체 Java Runtime 위치

기본 동작: 시스템에 설치된 런타임 또는 Message Queue와 함께 번들로 제공된 런타임을 사용합니다.

-vmargs arg1 [ [ arg2 ] … ]

없음 

인수를 Java 가상 머신에 전달 

인수는 공백으로 구분됩니다. 두 개 이상의 인수를 전달하거나 공백을 포함하는 인수를 전달하려면 인수 목록을 따옴표로 묶습니다.  

VM 인수는 명령줄을 통해서만 전달할 수 있으며, 인스턴스 구성 파일에는 관련 구성 등록 정보가 없습니다.

-license [ licenseName ]

없음 

로드할 사용권이 설치된 Message Queue 제품의 기본값과 다를 경우:

    pe: 기본 기능 사용 플랫폼판


    try: 엔터프라이즈 기능 사용 플랫폼판(90일 시험 사용)


    unl: 엔터프라이즈판


사용권 이름이 지정되지 않은 경우에는 시스템에 설치된 모든 사용권이 나열됩니다.  

-upgrade-store-nobackup

없음 

Message Queue 3.5 또는 3.5 SPx로 업그레이드할 때 호환되지 않는 버전의 이전 데이터 저장소를 자동으로 제거

자세한 내용은 Message Queue 설치 설명서를 참조하십시오.

-force

없음 

사용자 확인 없이 작업 수행 

이 옵션은 일반적으로 확인을 필요로 하는 -remove instance-upgrade-store-nobackup 옵션에만 적용됩니다.

-loglevel level

imq.broker.log.level

로깅 수준:

    NONE


    ERROR


    WARNING


    INFO


기본값: INFO

-metrics interval

imq.metrics.interval

브로커 메트릭 로깅 간격(초)

-tty

imq.log.console.output

모든 메시지를 콘솔에 기록 

브로커의 imq.log.console.output 등록 정보를 ALL로 설정합니다.

지정하지 않을 경우 오류 및 경고 메시지만 기록됩니다.  

-s | -silent

imq.log.console.output

자동 모드(콘솔에 기록하지 않음)

브로커의 imq.log.console.output 등록 정보를 NONE으로 설정합니다.

-version

없음 

버전 정보 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ]

-h | -help

없음 

사용 도움말 표시

명령 유틸리티

명령 유틸리티(imqcmd)는 브로커, 연결 서비스, 연결, 물리적 대상, 영구 가입 및 트랜잭션을 관리하는 데 사용됩니다.

모든 imqcmd 명령은 하위 명령을 포함해야 합니다. 단, -v 또는 -h 옵션을 사용하여 제품 버전 정보 또는 사용 도움말을 표시하는 경우는 제외됩니다. 다음은 사용 가능한 하위 명령 목록이며 각각의 하위 명령에 대해서는 다음 절에서 자세히 설명합니다. 모든 경우에 하위 명령에서 브로커 주소(-b 옵션)를 받으며 호스트 이름 또는 포트 번호가 지정되지 않으면 값 localhost7676을 기본값으로 간주합니다.

브로커 관리

shutdown bkr

브로커 종료 

restart bkr

브로커 다시 작동 

pause bkr

브로커 일시 중지 

resume bkr

브로커 다시 시작 

update bkr

브로커 등록 정보 설정 

reload cls

클러스터 구성 다시 로드 

query bkr

브로커 등록 정보 값 나열 

metrics bkr

브로커 메트릭 표시 

연결 서비스 관리

pause svc

연결 서비스 일시 중지 

resume svc

연결 서비스 다시 시작 

update svc

연결 서비스 등록 정보 설정 

list svc

브로커에서 사용할 수 있는 연결 서비스 나열 

query svc

연결 서비스 등록 정보 값 나열 

metrics svc

연결 서비스 메트릭 표시 

연결 관리

list cxn

브로커 연결 나열 

query cxn

연결 정보 표시 

물리적 대상 관리

create dst

물리적 대상 작성 

destroy dst

물리적 대상 완전 삭제 

pause dst

물리적 대상에 대한 메시지 전달 일시 중지 

resume dst

물리적 대상에 대한 메시지 전달 다시 시작 

update dst

물리적 대상 등록 정보 설정 

purge dst

물리적 대상에서 모든 메시지 제거 

compact dst

물리적 대상 압축 

list dst

물리적 대상 나열 

query dst

물리적 대상 등록 정보 값 나열 

metrics dst

물리적 대상 메트릭 표시 

영구 가입 관리

destroy dur

영구 가입 완전 삭제 

purge dur

영구 가입에 대한 모든 메시지 제거 

list dur

주제에대한 영구 가입 나열 

트랜잭션 관리

commit txn

트랜잭션 완결 

rollback txn

트랜잭션 롤백 

list txn

브로커에서 추적 중인 트랜잭션 나열 

query txn

트랜잭션 정보 표시 

브로커 관리

명령 유틸리티를 사용하여 브로커를 시작할 수 없습니다. 대신, 브로커 유틸리티(imqbrokerd)를 사용하십시오. 브로커가 시작된 후에는 표 13–2에 나열된 imqcmd 하위 명령을 사용하여 브로커를 관리 및 제어할 수 있습니다.

표 13–2 브로커 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

shutdown bkr [-b hostName :portNumber]

브로커 종료

restart bkr [-b hostName :portNumber]

브로커 다시 시작

브로커를 종료하고 처음 시작했을 때 지정했던 것과 동일한 옵션을 사용하여 다시 시작합니다.  

pause bkr [-b hostName :portNumber]

브로커 일시 중지

자세한 내용은 브로커 일시 중지를 참조하십시오.

resume bkr [-b hostName :portNumber]

브로커 다시 시작

update bkr [-b hostName :portNumber]

    -o property1= value1


    [ [-o property2 =value2] … ]


브로커 등록 정보 설정 

브로커 등록 정보에 대한 자세한 내용은 14 장, 브로커 등록 정보 참조을 참조하십시오.

reload cls

클러스터 구성 다시 로드 [브로커 클러스터에만 적용]

모든 지속성 정보를 최신 상태로 유지합니다.  

query bkr -b hostName :portNumber

브로커 등록 정보 값 나열 

또한 클러스터 내 지정된 브로커에 연결된 모든 실행 중인 브로커를 나열합니다.  

metrics bkr [-b hostName :portNumber]

    [-m metricType]


    [-int interval]


    [-msp numSamples]


브로커 메트릭 표시 

-m 옵션은 표시할 메트릭 유형을 지정합니다.

    ttl: 브로커에 유입 및 유출되는 메시지와 패킷


    rts: 브로커에 유입 및 유출되는 메시지와 패킷의 초당 속도


    cxn: 연결, 가상 메모리 힙 및 스레드


기본값: ttl

-int 옵션은 메트릭 표시 간격(초)을 지정합니다. 기본값: 5

-msp 옵션은 표시할 샘플 수를 지정합니다. 기본값: 무제한(지정되지 않음)

연결 서비스 관리

표 13–3에서는 연결 서비스를 관리하기 위한 imqcmd 하위 명령을 나열합니다.

표 13–3 연결 서비스 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

pause svc -n serviceName

    [-b hostName: portNumber]


연결 서비스 일시 중지

admin 연결 서비스는 일시 중지할 수 없습니다.

resume svc -n serviceName

    [-b hostName: portNumber]


연결 서비스 다시 시작

update svc -n serviceName

    [-b hostName: portNumber]


    -o property1= value1


    [ [-o property2 =value2] … ]


연결 서비스 등록 정보 설정 

연결 서비스 등록 정보에 대한 자세한 내용은 연결 등록 정보를 참조하십시오.

list svc [-b hostName :portNumber]

브로커에서 사용할 수 있는 연결 서비스 나열 

query svc -n serviceName

    [-b hostName: portNumber]


연결 서비스 등록 정보 값 나열 

metrics svc -n serviceName

    [-b hostName: portNumber]


    [-m metricType]


    [-int interval]


    [-msp numSamples]


연결 서비스 메트릭 표시 

-m 옵션은 표시할 메트릭 유형을 지정합니다.

    ttl: 브로커에 유입 및 유출되는 메시지와 패킷의 메트릭을 지정된 연결 서비스를 통해 표시


    rts: 브로커에 메시지와 패킷이 유입 및 유출되는 초당 속도를 지정된 연결 방식으로 표시


    cxn: 연결, 가상 메모리 힙 및 스레드


기본값: ttl

-int 옵션은 메트릭 표시 간격(초)을 지정합니다. 기본값: 5

-msp 옵션은 표시할 샘플 수를 지정합니다. 기본값: 무제한(지정되지 않음)

연결 관리

표 13–4에서는 연결을 관리하기 위한 imqcmd 하위 명령을 나열합니다.

표 13–4 연결 서비스 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

list cxn [-svn serviceName]

    [-b hostName: portNumber]


브로커에 대한 연결 나열

지정된 연결 서비스에 대한 브로커의 모든 연결을 나열합니다. 연결 서비스를 지정하지 않는 경우 모든 연결이 나열됩니다.  

query cxn -n connectionID

    [-b hostName: portNumber]


연결 정보 표시

물리적 대상 관리

표 13–5에서는 물리적 대상을 관리하기 위한 imqcmd 하위 명령을 나열합니다. -t(대상 유형) 옵션은 언제나 두 가지 값 중 하나를 사용할 수 있습니다.

표 13–5 물리적 대상 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

create dst -t destType -n destName

    [-o property1 =value1]


    [ [ -o property2 =value2] … ]


물리적 대상 작성 [마스터 브로커를 일시적으로 사용할 수 없는 클러스터에서는 수행할 수 없습니다.]

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

destroy dst -t destType -n destName

물리적 대상 완전 삭제

이 작업은 사용 불능 메시지 대기열처럼 시스템에서 생성된 대상에는 적용할 수 없습니다.  

pause dst [-t destType -n destName]

    [-pst pauseType]


물리적 대상에 대한 메시지 전달 일시 중지

-t-n 옵션에서 지정한 물리적 대상에 대해 메시지 전달을 일시 중지합니다. 이 옵션을 지정하지 않으면 모든 대상이 일시 중지됩니다.

-pst 옵션은 일시 중지할 메시지 전달의 유형을 지정합니다.

    CONSUMERS: 메시지 사용자로의 전달 일시 중지


    PRODUCERS: 메시지 생성자로의 전달 일시 중지


    ALL: 모든 메시지 전달 일시 중지


기본값: ALL

resume dst [-t destType -ndestName]

물리적 대상에 대한 메시지 전달 다시 시작 

-t-n 옵션을 통해 지정한 물리적 대상에 대해 메시지 전달을 다시 시작합니다. 이 옵션을 지정하지 않을 경우 모든 대상이 다시 시작됩니다.

update dst -t destType -n destName

    -o property1= value1


    [ [ -o property2 =value2] … ]


물리적 대상 등록 정보 설정

물리적 대상 등록 정보에 대한 자세한 내용은 15 장, 물리적 대상 등록 정보 참조을 참조하십시오.

purge dst -t destType -n destName

물리적 대상에서 모든 메시지 제거

compact dst [-t destType -n destName]

물리적 대상 압축

-t-n 옵션을 통해 지정하는 물리적 대상에 대한 파일 기반 영구 데이터 저장소를 압축합니다. 이 옵션을 지정하지 않을 경우 모든 대상이 압축됩니다.

대상을 압축하려면 먼저 대상을 일시 중지해야 합니다.  

list dst [-t destType]

    [-tmp]


물리적 대상 나열 

-t 옵션을 통해 지정된 유형의 모든 물리적 대상을 나열합니다. 대상 유형을 지정하지 않을 경우 대기열 및 주제 대상이 모두 나열됩니다. -tmp 옵션을 지정하는 경우 임시 대상도 나열됩니다.

query dst -t destType -n destName

물리적 대상 등록 정보 값 나열

metrics dst -t destType -n destName

    [-m metricType]


    [-int interval]


    [-msp numSamples]


물리적 대상 메트릭 표시 

-m 옵션은 표시할 메트릭 유형을 지정합니다.

    ttl: 대상에 유입 및 유출되고 메모리에 있는 메시지와 패킷


    rts: 브로커에 유입 및 유출되는 메시지와 패킷의 초당 속도(기타 속도 정보와 함께 표시)


    con: 메시지 사용자 관련 메트릭


    dsk: 디스크 사용량


기본값: ttl

-int 옵션은 메트릭 표시 간격(초)을 지정합니다. 기본값: 5

-msp 옵션은 표시할 샘플 수를 지정합니다. 기본값: 무제한(지정되지 않음)

영구 가입 관리

표 13–6에서는 영구 가입을 관리하기 위한 imqcmd 하위 명령을 나열합니다.

표 13–6 영구 가입 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

destroy dur -c clientID

    -n subscriberName


영구 가입 완전 삭제 [마스터 브로커를 일시적으로 사용할 수 없는 클러스터에서는 수행할 수 없습니다.]

purge dur -c clientID

    -n subscriberName


영구 가입에 대한 모든 메시지 제거

list dur -d topicName

주제에 대한 영구 가입 나열

트랜잭션 관리

표 13–7에서는 트랜잭션을 관리하기 위한 imqcmd 하위 명령을 나열합니다.

표 13–7 트랜잭션 관리에 대한 명령 유틸리티 하위 명령

구문 

설명 

commit txn -n transactionID

트랜잭션 완결

rollback txn -n transactionID

트랜잭션 롤백

list txn

브로커에서 추적 중인 트랜잭션 나열

query txn -n transactionID

트랜잭션 정보 표시

일반 명령 유틸리티 옵션

표 13–8에 나열된 추가 옵션은 imqcmd 명령의 모든 하위 명령에 적용할 수 있습니다.

표 13–8 일반 명령 유틸리티 옵션

옵션 

설명 

-secure

ssladmin 연결 서비스를 사용하는 브로커에 보안 연결 사용

-u userName

인증에 사용되는 사용자 이름 

이 옵션을 생략하면 명령 유틸리티에서 대화식으로 사용자 이름을 묻는 메시지를 표시합니다.  

-p password

인증에 사용되는 비밀번호 [이 옵션은 더 이상 사용되지 않으며 추후에 제거될 것입니다. 비밀번호를 생략하거나(대화식으로 비밀번호를 묻는 메시지 표시) -passfile 옵션을 사용하여 비밀번호를 포함하는 파일을 지정합니다. ]

-passfile path

비밀번호 파일의 위치 

자세한 내용은 비밀번호 파일을 참조하십시오.

-rtm timeoutInterval

초기 시간 초과 간격(초) 

요청을 다시 시도하기 전에 명령 유틸리티가 브로커로부터 응답을 기다리는 초기 시간 길이입니다. 각 후속 재시도에서는 이 초기 간격의 배수가 되는 시간 초과 간격을 사용합니다.  

기본값: 10

-rtr numRetries

브로커 요청 시간이 초과된 후 시도할 재시도 횟수 

기본값: 5

-javahome path

대체 Java Runtime 위치

기본 동작: 시스템에 설치된 런타임 또는 Message Queue와 함께 번들로 제공된 런타임을 사용합니다.

-f

사용자 확인 없이 작업 수행 

-s

자동 모드(출력이 표시되지 않음) 

-v

버전 정보 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ] , [사용자 이름과 비밀번호가 필요하지 않음]

-h

사용 도움말 표시,

-H

속성 목록과 예를 포함하여 자세한 사용 도움말을 표시합니다.,

객체 관리자 유틸리티

객체 관리자 유틸리티(imqobjmgr)는 Message Queue 관리 대상 객체를 만들고 관리합니다. 표 13–9에서는 사용 가능한 하위 명령을 나열합니다.

표 13–9 객체 관리자 하위 명령

하위 명령 

설명 

add

객체 저장소에 관리 객체 추가 

delete

객체 저장소에서 관리 객체 삭제 

list

객체 저장소의 관리 객체 나열 

query

관리 객체 정보 표시 

update

관리 객체 수정 

표 13–10에서는 imqobjmgr 명령에 대한 옵션을 나열합니다.

표 13–10 객체 관리자 옵션

옵션 

설명 

-l lookupName

관리 대상 객체의 JNDI 조회 이름

-j attribute= value

JNDI 객체 저장소 속성( 객체 저장소 참조)

-t objectType

관리 객체 유형:  

    q: 대기열 대상


    t: 주제 대상


    cf: 연결 팩토리


    qf: 대기열 연결 팩토리


    tf: 주제 연결 팩토리


    xcf: 분산 트랜잭션의 연결 팩토리


    xqf: 배포 트랜잭션의 대기열 연결 팩토리


    xtf: 분산 트랜잭션의 주제 연결 팩토리


    e: SOAP 종점(Java 클라이언트용 Message Queue 개발 안내서 참조)


-o attribute= value

관리 대상 객체 속성( 관리 객체 속성16 장, 관리 객체 속성 참조 참조)

-r readOnlyState

관리 객체가 읽기 전용입니까?  

값이 true이면 클라이언트에서 객체 속성을 수정할 수 없습니다. 기본값: false

-i fileName

하위 명령절 전체 또는 일부를 포함하는 명령 파일의 이름 

-pre

명령을 수행하지 않고 결과 미리 보기 

이 옵션은 기본 속성의 값을 확인할 때 유용합니다.  

-javahome path

대체 Java Runtime 위치

기본 동작: 시스템에 설치된 런타임 또는 Message Queue와 함께 번들로 제공된 런타임을 사용합니다.

-f

사용자 확인 없이 작업 수행 

-s

자동 모드(출력이 표시되지 않음) 

-v

버전 정보 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ]

-h

사용 도움말 표시

-H

속성 목록과 예를 포함하여 자세한 사용 도움말 표시

데이터베이스 관리자 유틸리티

데이터베이스 관리자 유틸리티(imqdbmgr)는 JDBC 기반 영구 데이터 저장소의 데이터베이스 스키마를 설정합니다. 이 유틸리티를 사용하여 손상된 Message Queue 데이터베이스 테이블을 삭제하거나 데이터 저장소를 변경할 수 있습니다. 표 13–11에서는 사용 가능한 하위 명령을 나열합니다.

표 13–11 데이터베이스 관리자 하위 명령

하위 명령 

설명 

create all

새 데이터베이스와 영구 저장소 스키마 만들기 

내장 데이터베이스 시스템에 사용됩니다. 브로커 등록 정보 imq.persist.jdbc.createdburl을 지정해야 합니다.

create tbl

기존 데이터베이스의 영구 저장소 스키마 만들기 

외부 데이터베이스 시스템에 사용됩니다.  

delete tbl

현재 영구 저장소에서 Message Queue 데이터베이스 테이블 삭제 

delete oldtbl

이전 버전 영구 저장소에서 Message Queue 데이터베이스 테이블 삭제 

영구 저장소가 현재 버전의 Message Queue로 자동 마이그레이션된 후에 사용됩니다.  

recreate tbl

영구 저장소 스키마 다시 만들기 

현재의 영구 저장소에서 모든 기존 Message Queue 데이터베이스 테이블을 삭제하고 스키마를 다시 만듭니다.  

reset lck

영구 저장소 잠금 재설정 

영구 저장소 데이터베이스를 다른 프로세스에서 사용할 수 있도록 잠금을 재설정합니다.  

표 13–12에서는 imqdbmgr 명령에 대한 옵션을 나열합니다.

표 13–12 데이터베이스 관리자 옵션

옵션 

설명 

-b instanceName

브로커의 인스턴스 이름 

-Dproperty= value

브로커 구성 등록 정보 설정 

지속성 관련 브로커 구성 등록 정보에 대한 자세한 내용은 지속성 등록 정보를 참조하십시오.

주의: 이 옵션을 사용하여 설정한 등록 정보의 형식과 맞춤법에 주의하십시오. 잘못된 값은 알림이나 경고 없이 무시됩니다.

-u name

인증에 사용되는 사용자 이름 

-p password

인증에 사용되는 비밀번호 [이 옵션은 더 이상 사용되지 않으며 추후에 제거될 것입니다. 비밀번호를 생략하거나(대화식으로 비밀번호를 묻는 메시지 표시) -passfile 옵션을 사용하여 비밀번호를 포함하는 파일을 지정합니다. ]

-passfile path

비밀번호 파일의 위치 

자세한 내용은 비밀번호 파일을 참조하십시오.

-v

버전 정보 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ]

-h

사용 도움말 표시

사용자 관리자 유틸리티

사용자 관리자 유틸리티(imqusermgr)는 플랫 파일 사용자 저장소를 채우거나 편집하는 데 사용됩니다. 이 유틸리티는 브로커가 설치된 위치와 동일한 호스트에서 실행되어야 합니다. 브로커별 사용자 저장소가 아직 없으면 먼저 해당 브로커 인스턴스를 시작하여 사용자 저장소를 만들어야 합니다. 또한 저장소에 쓸 수 있는 적절한 권한도 필요합니다. 즉, Solaris 및 Linux 플랫폼의 경우에는 해당 브로커 인스턴스를 처음으로 만든 사용자나 루트 사용자여야 합니다.

표 13–13에서는 imqusermgr 명령에 사용 가능한 하위 명령을 나열합니다. 이 경우, -i 옵션은 명령의 사용자 저장소가 적용되는 브로커의 인스턴스 이름을 지정합니다. 지정하지 않을 경우 기본 이름 imqbroker가 사용됩니다.

표 13–13 사용자 관리자 하위 명령

구문 

설명 

add [-i instanceName]

    -u userName -p password


    [-g group]


사용자 및 비밀번호를 저장소에 추가 

선택적 -g 옵션은 현재 사용자를 할당할 그룹을 지정합니다.

    admin


    user


    anonymous


delete [-i instanceName]

    -u userName


저장소에서 사용자 삭제 

update [-i instanceName]

    -u userName -p password


    [-a activeState]


update [-i instanceName]

    -u userName -a activeState


    [-p password]


사용자의 비밀번호 또는 활성 상태 설정(또는 모두) 

-a 옵션은 사용자를 활성화할지(true) 비활성화할지(false) 여부를 지정하는 부울 값을 사용합니다. 기본값: true

list [-i instanceName]

    [-u userName]


사용자 정보 표시 

사용자 이름을 지정하지 않을 경우 저장소의 모든 사용자가 나열됩니다.  

또한 표 13–14에 나열된 옵션은 imqusermgr 명령의 모든 하위 명령에 적용할 수 있습니다.

표 13–14 일반 사용자 관리자 옵션

옵션 

설명 

-f

사용자 확인 없이 작업 수행 

-s

자동 모드(출력이 표시되지 않음) 

-v

버전 정보 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ]

-h

사용 도움말 표시

서비스 관리자 유틸리티

서비스 관리자 유틸리티(imqsvcadmin)는 브로커를 Windows 서비스로 설치합니다. 표 13–15에서는 사용 가능한 하위 명령을 나열합니다.

표 13–15 서비스 관리자 하위 명령

하위 명령 

설명 

install

서비스 설치 

remove

서비스 제거 

query

시작 옵션 표시 

시작 옵션에는 서비스의 수동 또는 자동 시작, 위치, Java Runtime 위치, 시작할 때 브로커에 전달되는 인수 값이 포함됩니다(표 13–16 참조).

표 13–16에서는 imqsvcadmin 명령에 대한 옵션을 나열합니다.

표 13–16 서비스 관리자 옵션

옵션 

설명 

-javahome path

대체 Java Runtime 위치

기본 동작: 시스템에 설치된 런타임 또는 Message Queue와 함께 번들로 제공된 런타임을 사용합니다.

-jrehome path

대체 JRE(Java Runtime Environment) 위치

-vmargs arg1 [ [arg2 ] … ]

브로커 서비스를 실행 중인 Java 가상 머신(JVM)에 전달할 추가 인수 [이러한 인수는 서비스의 등록 정보 창(Windows 관리 도구 제어판의 서비스 도구)에 있는 일반 탭의 시작 매개 변수 필드에서도 지정할 수 있습니다. ]

예:

imqsvcadmin install -vmargs "-Xms16m -Xmx128m"

-args arg1 [ [arg2] … ]

브로커 서비스에 전달할 추가 명령줄 인수

예:

imqsvcadmin install -args "-passfile d:\\imqpassfile"

브로커 명령줄 인수에 대한 자세한 내용은 브로커 유틸리티를 참조하십시오.

-h

사용 도움말 표시 [명령줄에 지정된 다른 옵션은 무시됩니다. ]

-javahome, -vmargs-args 옵션을 사용하여 지정한 모든 정보는 Windows 레지스트리의 다음 경로에 있는 JREHome, JVMArgsServiceArgs 키 아래에 저장됩니다.

   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\iMQ_Broker\Parameters

키 도구 유틸리티

키 도구 유틸리티(imqkeytool)는 브로커에 대해 자체 서명한 인증서를 생성합니다. 이 인증서는 ssljms, ssladmin 또는 cluster 연결 서비스에 사용할 수 있습니다. 구문은 다음과 같습니다.

   imqkeytool -broker

UNIX 시스템의 경우 superuser(root) 계정에서 이 유틸리티를 실행해야 할 수도 있습니다.

14장 브로커 등록 정보 참조

이 장에서는 메시지 브로커의 구성 등록 정보에 대한 참조 정보를 제공합니다. 이 장은 다음 내용으로 구성되어 있습니다.

연결 등록 정보

표 14–1은 연결 서비스 관련 브로커 등록 정보를 나열합니다.

표 14–1 브로커 연결 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.service.activelist

문자열 

jms,admin

브로커가 시작될 때 활성화될 쉼표로 구분된 연결 서비스 목록

imq.hostname

문자열 

사용 가능한 모든 IP 주소 

모든 연결 서비스의 기본 호스트 이름 또는 IP 주소

imq.portmapper.hostname

문자열 

없음 

포트 매퍼의 호스트 이름 또는 IP 주소

이 등록 정보를 지정한 경우 imq.hostname을 무시합니다.

imq.portmapper.port [imqcmd update bkr 명령과 함께 사용할 수 있습니다.]

정수 

7676

포트 매퍼의 포트 번호 


주 –

여러 브로커 인스턴스가 동일한 호스트에서 실행 중이면 각 호스트마다 고유한 포트 매퍼 포트가 할당되어야 합니다.


imq.serviceName .protocolType.hostname [jms, ssljms, adminssladmin 서비스에만 해당됩니다. httpjmshttpsjms 서비스 구성에 대한 자세한 내용은 부록 C, HTTP/HTTPS 지원을 참조하십시오.]

문자열 

없음 

연결 서비스의 호스트 이름 또는 IP 주소

지정할 경우, 지정된 연결 서비스의 imq.hostname을 무시합니다.

imq.serviceName .protocolType.port

정수 

0

연결 서비스의 포트 번호 

0은 포트 번호를 포트 매퍼에서 동적으로 할당하도록 지정합니다.

imq.portmapper.backlog

정수 

50

운영 체제 백로그에서 보류 중인 최대 포트 매퍼 요청 수 

imq.serviceName .threadpool_model [jmsadmin 서비스에만 해당]

문자열 

dedicated

스레드 풀 관리를 위한 스레딩 모델:  

    dedicated: 연결당 2개의 전용 스레드(받는 메시지와 보내는 메시지에 대해 각각 하나씩)


    shared: 메시지를 보내거나 받을 때 공유 스레드에서 처리되는 연결


     

전용 모델은 지원할 수 있는 연결 수를 제한하지만 보다 뛰어난 성능을 제공합니다. 공유 모델은 사용 가능한 연결 수를 늘리지만 스레드 관리에 필요한 추가 오버헤드로 인해 성능이 다소 저하됩니다.  

imq.serviceName .min_threads

정수 

jms: 10ssljms : 10httpjms: 10 httpsjms: 10 admin: 4ssladmin: 4

연결 서비스의 스레드 풀에서 관리되는 최소 스레드 수 

사용 가능한 스레드 수가 이 임계값을 초과하면 최소 수에 도달할 때까지 스레드를 종료시켜 여유 스레드를 확보합니다.  

기본값은 표시된 대로 연결 서비스에 따라 다릅니다.  

imq.serviceName .max_threads

정수 

jms: 1000 ssljms: 500httpjms: 500httpsjms: 500 admin: 10ssladmin: 10

이 스레드 수를 초과하면 스레드 풀에 명명된 연결 서비스용으로 새 스레드가 더 이상 추가되지 않는 스레드 수 

0보다 크고 imq.serviceName.min_threads 값보다 커야 합니다.

기본값은 표시된 대로 연결 서비스에 따라 다릅니다.  

imq.shared.connectionMonitor_limit [공유 스레딩 모델에만 해당]

정수 

Solaris: 512Linux: 512Windows: 64

분산자 스레드에서 모니터링되는 최대 연결 수 

시스템에서 모든 연결을 모니터하기에 충분한 수의 분산자 스레드를 할당합니다. 이 등록 정보 값이 작을수록 스레드를 활성 연결에 더 빨리 할당할 수 있습니다. 값 -1은 스레드당 무제한 연결 수를 의미합니다.

기본값은 표시된 대로 운영 체제 플랫폼에 따라 다릅니다.  

imq.ping.interval

정수 

120

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

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

라우팅 등록 정보

표 14–2은 라우팅 서비스 관련 브로커 등록 정보를 나열합니다. 표 14–3에는 대상 자동 생성을 구성하는 등록 정보가 나열되어 있습니다.

표 14–2 브로커 라우팅 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.system.max_count [imqcmd update bkr 명령과 함께 사용할 수 있습니다.]

정수 

-1

브로커에서 보유하는 최대 메시지 수 

-1은 무제한 메시지 수를 의미합니다.

imq.system.max_size

문자열 

-1

브로커에서 보유하는 메시지의 최대 총 크기 

값은 다음 접미사를 사용하여 바이트, 킬로바이트 또는 메가바이트 단위로 표현할 수 있습니다.  

    b: 바이트


    k: 킬로바이트(1024바이트)


    m: 메가바이트(1024 × 1024 = 1,048,576바이트)


     

접미사가 붙지 않은 값은 바이트로 표현됩니다. 값 -1은 무제한 메시지 용량을 의미합니다.

     

예:

    1600: 1600바이트


    1600b: 1600바이트


    16k: 16킬로바이트(= 16,384바이트)


    16m: 16메가바이트(= 16,777,216바이트)


    -1: 제한 없음


imq.message.max_size

문자열 

70m

단일 메시지 본문의 최대 크기 

구문은 imq.system.max_size의 구문과 같습니다(위 항목 참조).

imq.message.expiration.interval

정수 

60

만료된 메시지가 확보되는 간격(초) 

imq.resourceState .threshold

정수 

green: 0 yellow: 80orange: 90red: 98

메모리 자원 상태가 트리거되는 사용률(여기서 resourceStategreen, yellow, orange 또는 red)

imq.resourceState .count

정수 

green: 5000 yellow: 500orange: 50red: 0

메모리 자원 상태 임계값에 도달했는지 여부를 확인하기 전에 일괄 처리에서 허용되는 최대 받는 메시지 수(여기서 resourceStategreen, yellow, orange 또는 red)

이 제한은 시스템 메모리가 점점 부족해지면 메시지 생성자를 억제합니다.  

imq.destination.DMQ.truncateBody

부울 

false

사용 불능 메시지 대기열에 저장하기 전에 메시지 본문을 제거하시겠습니까?  

true이면 메시지 헤더와 등록 정보 데이터가 저장됩니다.

imq.transaction.autorollback

부울 

false

브로커 시작 시 준비된 상태로 있는 분산된 트랜잭션을 자동으로 롤백하시겠습니까?  

false이면 트랜잭션을 수동으로 완결하거나 명령 유틸리티(imqcmd)를 사용하여 롤백해야 합니다.

표 14–3 자동 생성된 대상에 대한 브로커 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.autocreate.queue [imqcmd update bkr 명령과 함께 사용할 수 있습니다.] , [대기열 대상에만 해당]

부울 

true

대기열 대상을 자동으로 생성하시겠습니까?  

imq.autocreate.topic [주제 대상에만 해당]

부울 

true

주제 대상을 자동으로 생성하시겠습니까? 

imq.autocreate.destination.maxNumMsgs

정수 

100000

사용되지 않은 메시지의 최대 개수 

-1은 무제한 메시지 수를 의미합니다.

imq.autocreate.destination.maxBytesPerMsg

문자열 

10k

단일 메시지의 최대 크기(바이트) 

값은 다음 접미사를 사용하여 바이트, 킬로바이트 또는 메가바이트 단위로 표현할 수 있습니다.  

    b: 바이트


    k: 킬로바이트(1024바이트)


    m: 메가바이트(1024 × 1024 = 1,048,576바이트)


     

접미사가 붙지 않은 값은 바이트로 표현됩니다. 값 -1은 무제한 메시지 크기를 의미합니다.

     

예:

    1600: 1600바이트


    1600b: 1600바이트


    16k: 16킬로바이트(= 16,384바이트)


    16m: 16메가바이트(= 16,777,216바이트)


    -1: 제한 없음


imq.autocreate.destination.maxTotalMsgBytes

문자열 

10m

사용되지 않은 메시지의 최대 총 메모리(바이트)

구문은 imq.autocreate.destination.maxBytesPerMsg의 구문과 같습니다(위 항목 참조).

imq.autocreate.destination.limitBehavior

문자열 

REJECT_NEWEST

메모리 제한 임계값에 도달했을 때 브로커 동작:  

    FLOW_CONTROL: 생성자 속도 늦추기


    REMOVE_OLDEST: 가장 오래된 메시지 제거


    REMOVE_LOW_PRIORITY: 메시지의 보존 기간을 기준으로 우선 순위가 가장 낮은 메시지 삭제(생성자 클라이언트에 알리지 않음)


    REJECT_NEWEST: 최근 메시지 거부(지속성 메시지의 경우에만 생성자 클라이언트에 예외 알림)


     

값이 REMOVE_OLDEST 또는 REMOVE_LOW_PRIORITY이고 imq.autocreate.destination.useDMQ 등록 정보가 true이면 초과 메시지가 사용 불능 메시지 대기열로 이동됩니다.

imq.autocreate.destination.maxNumProducers

정수 

100

대상에 대한 최대 메시지 생성자 수

이 제한에 도달하면 새로운 생성자가 생성되지 않습니다. 값 -1은 무제한 생성자 수를 의미합니다.

imq.autocreate.queue.maxNumActiveConsumers

정수 

1

대기열 대상에서 로드 균형 조정 전달 시 최대 활성 메시지 사용자 수

-1은 무제한 사용자 수를 의미합니다.

imq.autocreate.queue.maxNumBackupConsumers

정수 

0

대기열 대상에서 로드 균형 조정 전달 시 최대 백업 메시지 사용자 수

-1은 무제한 사용자 수를 의미합니다.

imq.autocreate.queue.consumerFlowLimit

정수 

1000

단일 일괄 처리에서 대기열 사용자에게 전달되는 최대 메시지 수

로드 균형 조정된 대기열 전달에서 이 수는 로드 균형 조정을 시작하기 전에 활성 사용자에게 라우팅되는 초기 대기 메시지 수입니다. 대상 사용자는 연결에 대해 낮은 값을 지정하여 이 제한을 무시할 수 있습니다.  

-1은 무제한 메시지 수를 의미합니다.

imq.autocreate.topic.consumerFlowLimit

정수 

1000

단일 일괄 처리에서 주제 사용자에게 전달되는 최대 메시지 수

-1은 무제한 사용자 수를 의미합니다.

imq.autocreate.destination.isLocalOnly

부울 

false

로컬 전달만 하시겠습니까?  

이 등록 정보는 브로커 클러스터의 대상에만 적용되며 대상을 만들고 나면 변경할 수 없습니다. 이 값이 true이면 대상을 다른 브로커에 복사하지 않으므로 메시지 전달이 로컬 사용자(대상이 생성된 브로커에 연결된 사용자)에게만 제한됩니다.

imq.autocreate.queue.localDeliveryPreferred

부울 

false

로컬 전달을 선호합니까?  

이 등록 정보는 브로커 클러스터의 로드 균형 조정된 대기열 전달에만 적용됩니다. 이 값이 true이면 로컬 브로커에 사용자가 없는 경우에만 메시지가 원격 사용자에게 전달됩니다. 대상이 로컬 전용 전달로 제한되지 않아야 합니다(imq.autocreate.destination.isLocalOnlyfalse여야 함).

imq.autocreate.destination.useDMQ

부울 

true

사용 불능 메시지를 사용 불능 메시지 대기열로 보내겠습니까?  

false이면 사용 불능 메시지가 삭제됩니다.

지속성 등록 정보

Message QueueTM는 영구 데이터 저장소의 파일 기반 및 JDBC 기반 모델을 모두 지원합니다. 브로커 등록 정보 imq.persist.store(표 14–4)는 사용할 모델을 지정합니다. 다음 절에서는 두 모델의 브로커 구성 등록 정보에 대해 설명합니다.

표 14–4 전역 브로커 지속성 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.persist.store

문자열 

file

영구 데이터 저장소 모델:  

    file: 파일 기반 지속성


    jdbc: JDBC 기반 지속성


파일 기반 지속성

표 14–5는 파일 기반 지속성 관련 브로커 등록 정보를 나열합니다.

표 14–5 파일 기반 지속성에 대한 브로커 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.persist.file.message.max_record_size

문자열 

1m

메시지 저장소 파일에 추가할 최대 크기 메시지 

이 크기를 초과하는 모든 메시지는 고유의 개별 파일에 저장됩니다.  

값은 다음 접미사를 사용하여 바이트, 킬로바이트 또는 메가바이트 단위로 표현할 수 있습니다.  

    b: 바이트


    k: 킬로바이트(1024바이트)


    m: 메가바이트(1024 × 1024 = 1,048,576바이트)


접미사가 붙지 않는 값은 바이트로 표현됩니다.  

예:

    1600: 1600바이트


    1600b: 1600바이트


    16k: 16킬로바이트(= 16,384바이트)


    16m: 16메가바이트(= 16,777,216바이트)


imq.persist.file.destination.message.filepool.limit

정수 

100

대상 파일 풀에서 재사용할 수 있는 최대 사용 가능 파일 수 

이 제한을 초과하는 사용 가능 파일은 삭제됩니다. 이 제한을 초과할 경우 브로커는 필요에 따라 추가 파일을 작성하고 삭제합니다.  

이 제한이 클수록 브로커에서 영구 데이터를 더 빠르게 처리할 수 있습니다.  

imq.persist.file.message.filepool.cleanratio

정수 

0

빈 상태로 유지 관리할 사용 가능 파일 풀의 파일 비율 

이 값이 클수록 작업 중 파일을 지우는 데 필요한 오버헤드가 늘어나지만, 파일 풀에 필요한 디스크 공간은 줄어듭니다.  

imq.persist.file.message.cleanup

부울 

false

종료 시 사용 가능 파일 풀의 파일을 지우겠습니까?  

이 등록 정보를 true로 설정하면 파일 저장소에 필요한 디스크 공간을 절약할 수 있지만 브로커 종료가 느려집니다.

imq.persist.file.sync.enabled

부울 

false

메모리 상태를 물리적 저장소 장치와 동기화하시겠습니까? 

이 등록 정보를 true로 설정하면 시스템 충돌로 인한 데이터 손실이 없어지지만 성능이 저하됩니다.


주 –

Sun Cluster 및 Sun Cluster Data Service for Message Queue를 실행하는 경우 모든 클러스터 노드의 브로커에 대해 이 등록 정보를 true로 설정합니다.


JDBC 기반 지속성

표 14–6은 JDBC 기반 지속성 관련 브로커 등록 정보를 나열합니다. 다음은 DataMirror Mobile Solutions, Inc.의 데이터베이스 제품 중 PointBase® 제품군에 대한 예입니다.

표 14–6 JDBC 기반 지속성에 대한 브로커 등록 정보

등록 정보 

예 

설명 

imq.persist.jdbc.brokerid

PointBase 내장 버전에는 필요하지 않음 

(선택 사항) 브로커 인스턴스 식별자

n - 12자 이하의 영숫자 문자열이어야 합니다. 여기서 n은 데이터베이스에서 허용되는 최대 테이블 이름 길이입니다.

두 개 이상의 브로커 인스턴스가 영구 데이터 저장소로 같은 데이터베이스를 사용 중인 경우에는 데이터베이스 테이블 이름에 이 식별자가 추가되어 해당 이름을 고유하게 나타냅니다. 보통 한 브로커 인스턴스에 대해서만 데이터를 저장하는 내장 데이터베이스에는 이 식별자가 필요하지 않습니다.  

imq.persist.jdbc.driver

com.pointbase.jdbc.jdbcUniversalDriver

데이터베이스에 연결하기 위한 JDBC 드라이버의 Java 클래스 이름

imq.persist.jdbc.opendburl

jdbc:pointbase:embedded:dbName ;

    database.home=
    
       .../instances/instanceName/dbstore
    

기존 데이터베이스로의 연결을 여는 데 필요한 URL

imq.persist.jdbc.createdburl

jdbc:pointbase:embedded:dbName ;

    new,database.home=
    
       .../instances/instanceName/dbstore
    

(선택 사항) 새 데이터베이스를 작성하는 데 필요한 URL

Message Queue 데이터베이스 관리자 유틸리티(imqdbmgr)를 사용하여 데이터베이스를 만드는 경우에만 필요합니다.

imq.persist.jdbc.closedburl

PointBase에는 필요하지 않음 

(선택 사항) 데이터베이스 연결을 닫는 데 필요한 URL

imq.persist.jdbc.user

 

(선택 사항) 필요할 경우 데이터베이스 연결을 여는 데 필요한 사용자 이름

보안상의 이유로 imqbrokerd -dbuserimqdbmgr - u 명령줄 옵션을 사용해서 값을 지정할 수도 있습니다.

imq.persist.jdbc.needpassword

 

(선택 사항) 브로커에서 데이터베이스에 액세스하려면 비밀번호가 필요합니까?

true이면 -passfile 옵션을 사용하여 비밀번호가 들어 있는 비밀번호 파일을 지정하지 않는 경우 imqbrokerdimqdbmgr 명령이 비밀번호를 묻는 프롬프트 메시지를 표시합니다.

imq.persist.jdbc.password [비밀번호 파일에만 사용해야 합니다.]

 

(선택 사항) 데이터베이스 연결을 여는 데 필요한 비밀번호

imq.persist.jdbc.table.IMQSV35

CREATE TABLE ${name}

    (STOREVERSION INTEGER NOT NULL,
    
     BROKERID VARCHAR(100))
    

버전 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQCCREC35

CREATE TABLE ${name}

    (RECORDTIME BIGINT NOT NULL,
    
     RECORD BLOB(10k))
    

구성 변경 레코드 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQDEST35

CREATE TABLE ${name}

    (DID VARCHAR(100) NOT NULL,
    
     DEST BLOB(10k),
    
     primaryKey(DID))
    

대상 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQINT35

CREATE TABLE ${name}

    (CUID BIGINT NOT NULL,
    
     INTEREST BLOB(10k),
    
     primaryKey(CUID))
    

인터레스트 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQMSG35

CREATE TABLE ${name}

    (MID VARCHAR(100) NOT NULL,
    
     DID VARCHAR(100),
    
     MSGSIZE BIGINT,
    
     MSG BLOB(1m),
    
     primaryKey(MID))
    

메시지 테이블을 작성하는 SQL 명령

MSG 열의 기본 최대 길이는 1메가바이트(1m)입니다. 이보다 더 긴 메시지가 있을 것으로 예상되면 길이를 해당 크기에 맞게 설정합니다. 테이블이 이미 작성된 경우에는 해당 테이블을 다시 작성하여 최대 메시지 길이를 변경해야 합니다.

imq.persist.jdbc.table.IMQPROPS35

CREATE TABLE ${name}

    (PROPNAME VARCHAR(100) NOT NULL,
    
     PROPVALUE BLOB(10k),
    
     primaryKey(PROPNAME))
    

등록 정보 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQILIST35

CREATE TABLE ${name}

    (MID VARCHAR(100) NOT NULL,
    
     CUID BIGINT,
    
     DID VARCHAR(100),
    
     STATE INTEGER,
    
     primaryKey(MID, CUID))
    

인터레스트 상태 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQTXN35

CREATE TABLE ${name}

    (TUID BIGINT NOT NULL,
    
     STATE INTEGER,
    
     TSTATEOBJ BLOB(10K),
    
     primaryKey(TUID))
    

트랜잭션 테이블을 작성하는 SQL 명령

imq.persist.jdbc.table.IMQTACK35

CREATE TABLE ${name}

    (TUID BIGINT NOT NULL,
    
     TXNACK BLOB(10k))
    

트랜잭션 확인 테이블을 작성하는 SQL 명령

보안 등록 정보

표 14–7은 보안 서비스 관련 브로커 등록 정보를 나열합니다.

표 14–7 브로커 보안 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.accesscontrol.enabled

부울 

true

액세스 제어를 사용합니까?

true이면 시스템에서 액세스 제어 등록 정보 파일을 확인하여 인증된 사용자에게 연결 서비스를 사용하거나 특정 대상과 관련된 특정 작업을 수행할 수 있는 권한이 부여되었는지 확인합니다.

imq.serviceName.accesscontrol.enabled

부울 

없음 

연결 서비스에 대해 액세스 제어를 사용합니까?  

이 등록 정보를 지정할 경우 지정된 연결 서비스의 imq.accesscontrol.enabled를 무시합니다.

true이면 시스템에서 액세스 제어 등록 정보 파일을 확인하여 인증된 사용자에게 지정된 연결 서비스를 사용하거나 특정 대상과 관련된 특정 작업을 수행할 수 있는 권한이 부여되었는지 확인합니다.

imq.accesscontrol.file.filename

문자열 

accesscontrol.properties

액세스 제어 등록 정보 파일 이름 

파일 이름은 액세스 제어 디렉토리의 상대 경로를 지정합니다(부록 A, 플랫폼별 Message QueueTM 데이터 위치 참조).

imq.serviceName .accesscontrol.file.filename

문자열 

없음 

연결 서비스의 액세스 제어 등록 정보 파일 이름 

이 등록 정보를 지정할 경우 지정된 연결 서비스의 imq.accesscontrol.file.filename을 무시합니다.

파일 이름은 액세스 제어 디렉토리의 상대 경로를 지정합니다(부록 A, 플랫폼별 Message QueueTM 데이터 위치 참조).

imq.authentication.type

문자열 

digest

비밀번호 인코딩 방법:

    basic: 기본 64


    digest: MD5


imq.serviceName .authentication.type

문자열 

없음 

연결 서비스에 대한 비밀번호 인코딩 방법:

    basic: 기본 64


    digest: MD5


이 등록 정보를 지정한 경우 지정된 연결 서비스에 대해 imq.authentication.type을 무시합니다.

imq.authentication.basic.user_repository

문자열 

file

기본 64 인증에 대한 사용자 저장소 유형:  

    file: 파일 기반


    ldap: LDAP


imq.authentication.client.response.timeout

정수 

180

인증 요청에 대한 클라이언트 응답 대기 시간 간격(초) 

imq.passfile.enabled

부울 

false

비밀번호 파일에서 비밀번호를 가져옵니까?  

imq.passfile.dirpath

문자열 

부록 A, 플랫폼별 Message QueueTM 데이터 위치 참조

비밀번호 파일을 포함하는 디렉토리 경로 

imq.passfile.name

문자열 

passfile

비밀번호 파일 이름

imq.imqcmd.password

문자열 

없음 

관리자의 비밀번호 

명령 유틸리티(imqcmd)에서는 이 비밀번호를 사용하여 명령을 실행하기 전에 사용자를 인증합니다.

imq.user_repository.ldap.server

문자열 

없음 

LDAP 서버의 호스트 이름 및 포트 번호

값은 다음 형태로 구성됩니다.  

    hostName: port


여기서 hostName은 LDAP 서버를 실행하는 호스트의 정규화된 DNS 이름이고 port는 서버에서 사용하는 포트 번호입니다.

     

페일오버 서버 목록을 지정하려면 다음 구문을 사용합니다.  

    host1: port1


    ldap://host2 : port2


    ldap://host3 :port3



     

목록의 항목을 공백으로 구분합니다. 각 페일오버 서버 주소의 접두어는 ldap://입니다. SSL을 사용하고 imq.user_repository.ldap.ssl.enabled 등록 정보를 true로 설정한 경우에도 이 형식을 사용합니다. 주소에 ldaps를 지정할 필요는 없습니다.

imq.user_repository.ldap.principal

문자열 

없음 

LDAP 사용자 저장소에 바인드할 때 사용하는 고유 이름

LDAP 서버에서 익명 검색을 허용하는 경우에는 필요하지 않습니다.

imq.user_repository.ldap.password [비밀번호 파일에만 사용해야 합니다.]

문자열 

없음 

LDAP 사용자 저장소에 바인드할 때 사용하는 비밀번호

LDAP 서버에서 익명 검색을 허용하는 경우에는 필요하지 않습니다.

imq.user_repository.ldap.propertyName

제공 예정 

제공 예정 

제공 예정 

imq.user_repository.ldap.base

문자열 

없음 

LDAP 사용자 항목에 사용되는 디렉토리 기반

imq.user_repository.ldap.uidattr

문자열 

없음 

LDAP 사용자 이름에 대한 공급자별 속성 식별자

imq.user_repository.ldap.usrfilter

문자열 

없음 

(선택 사항) LDAP 사용자 검색에 사용할 JNDI 필터

imq.user_repository.ldap.grpsearch

부울 

false

LDAP 그룹 검색을 사용하시겠습니까?


주 –

Message Queue에서는 중첩 그룹을 지원하지 않습니다.


imq.user_repository.ldap.grpbase

문자열 

없음 

LDAP 그룹 항목에 사용되는 디렉토리 기반

imq.user_repository.ldap.gidattr

문자열 

없음 

LDAP 그룹 이름에 대한 공급자별 속성 식별자

imq.user_repository.ldap.memattr

문자열 

없음 

LDAP 그룹의 사용자 이름에 대한 공급자별 속성 식별자

imq.user_repository.ldap.grpfilter

문자열 

없음 

(선택 사항) LDAP 그룹 검색에 사용할 JNDI 필터

imq.user_repository.ldap.timeout

정수 

280

LDAP 검색 시간 제한(초)

imq.user_repository.ldap.ssl.enabled

부울 

false

LDAP 서버와 통신할 때 SSL을 사용합니까?

imq.keystore.file.dirpath

문자열 

부록 A, 플랫폼별 Message QueueTM 데이터 위치 참조

키 저장소 파일을 포함하는 디렉토리 경로 

imq.keystore.file.name

문자열 

keystore

키 저장소 파일의 이름 

imq.keystore.password

문자열 

없음 

키 저장소 파일의 비밀번호 

imq.audit.enabled [Message Queue 엔터프라이즈판에만 적용]

부울 

false

브로커 로그 파일에 대한 감사 로깅을 시작하시겠습니까?  

모니터링 등록 정보

표 14–8은 모니터링 서비스 관련 브로커 등록 정보를 나열합니다.

표 14–8 브로커 모니터링 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.log.level [imqcmd update bkr 명령과 함께 사용할 수 있습니다.]

문자열 

INFO

로깅 수준 

출력 채널에 기록할 수 있는 로깅 정보 범주를 지정합니다. 가능한 값은 내림차순으로 다음과 같습니다.  

    ERROR


    WARNING


    INFO


각 수준에는 상위 수준이 포함됩니다(예: WARNING에는 ERROR가 포함됨).

imq.destination.logDeadMsgs

부울 

false

사용 불능 메시지에 대한 정보를 기록하시겠습니까?  

true이면 다음 이벤트가 기록됩니다.

  • 대상이 최대 크기 또는 최대 메시지 수에 도달하여 꽉 찼습니다.

  • 브로커가 관리 명령 또는 전달 확인 이외의 메시지를 제거합니다.

  • 브로커가 메시지를 사용 불능 메시지 대기열로 이동합니다.

imq.log.console.stream

문자열 

ERR

콘솔 출력 대상:  

    OUT: stdout


    ERR: stderr


imq.log.console.output

문자열 

ERROR|WARNING

콘솔에 기록할 로깅 정보 범주:  

    NONE


    ERROR


    WARNING


    INFO


    ALL


ERROR, WARNINGINFO 범주는 상위 범주를 포함하지 않습니다. 따라서 필요에 따라 각각의 범주를 명시적으로 지정해야 합니다. 여러 범주를 조합하여 지정할 수 있으며, 이 때 각 범주는 세로 막대(|)로 구분합니다.

imq.log.file.dirpath

문자열 

부록 A, 플랫폼별 Message QueueTM 데이터 위치 참조

로그 파일을 포함하는 디렉토리 경로 

imq.log.file.filename

문자열 

log.txt

로그 파일의 이름 

imq.log.file.output

문자열 

ALL

로그 파일에 기록할 로깅 정보의 범주:  

    NONE


    ERROR


    WARNING


    INFO


    ALL


ERROR, WARNINGINFO 범주는 상위 범주를 포함하지 않습니다. 따라서 필요에 따라 각각의 범주를 명시적으로 지정해야 합니다. 여러 범주를 조합하여 지정할 수 있으며, 이 때 각 범주는 세로 막대(|)로 구분합니다.

imq.log.file.rolloverbytes

정수 

-1

새 로그 파일로 출력을 롤오버할 때 파일 길이(바이트) 

-1은 무제한 바이트 수(롤오버 시 파일 길이와 상관 없음)를 의미합니다.

imq.log.file.rolloversecs

정수 

604800(1주)

새 로그 파일로 출력을 롤오버할 때 파일의 표시 시간(초) 

-1은 무제한(롤오버 시 파일 표시 시간과 상관 없음)을 의미합니다.

imq.log.syslog.output [Solaris 플랫폼에만 해당]

문자열 

ERROR

syslogd(1M)에 기록할 로깅 정보 범주:

    NONE


    ERROR


    WARNING


    INFO


    ALL


ERROR, WARNINGINFO 범주는 상위 범주를 포함하지 않습니다. 따라서 필요에 따라 각각의 범주를 명시적으로 지정해야 합니다. 여러 범주를 조합하여 지정할 수 있으며, 이 때 각 범주는 세로 막대(|)로 구분합니다.

imq.log.syslog.facility

문자열 

LOG_DAEMON

메시지 로깅을 위한 syslog 기능

가능한 값은 syslog(3C) 설명서 페이지에 나열된 값을 미러링합니다. Message Queue에서 사용 가능한 값은 다음과 같습니다.

    LOG_USER


    LOG_DAEMON


    LOG_LOCAL0


    LOG_LOCAL1


    LOG_LOCAL2


    LOG_LOCAL3


    LOG_LOCAL4


    LOG_LOCAL5


    LOG_LOCAL6


    LOG_LOCAL7


imq.log.syslog.identity

문자열 

imqbrokerd_${imq.instanceName }

syslog에 기록될 모든 메시지에 접두사로 사용할 아이디 문자열

imq.log.syslog.logpid

부울 

true

메시지와 함께 브로커 프로세스 아이디를 기록하시겠습니까?  

imq.log.syslog.logconsole

부울 

false

메시지를 syslog로 전송할 수 없는 경우 시스템 콘솔에 기록하시겠습니까?

imq.log.timezone

문자열 

지역 표준 시간대 

로그 타임스탬프의 표준 시간대 

가능한 값은 java.util.TimeZone.getTimeZone 메소드에서 사용되는 것과 동일한 값입니다.

예:

    GMT


    GMT-8:00


    America/LosAngeles


    Europe/Rome


    Asia/Tokyo


imq.metrics.enabled

부울 

true

로거에 메트릭 정보를 기록하시겠습니까?

메트릭 메시지 생성( imq.metrics.topic.enabled를 통해 제어됨)에는 영향을 미치지 않습니다.

imq.metrics.interval

정수 

-1

메트릭 정보를 로거에 기록하는 시간 간격(초) 

메트릭 메시지 생성 간격( imq.metrics.topic.interval를 통해 제어됨)에는 영향을 미치지 않습니다.

-1은 무기한 간격(메트릭 정보를 로거에 기록하지 않음)을 의미합니다.

imq.metrics.topic.enabled

부울 

true

메트릭 메시지를 메트릭 주제 대상에 생성하시겠습니까?  

false인 경우 메트릭 주제 대상에 가입하려고 하면 클라이언트측 예외가 발생합니다.

imq.metrics.topic.interval

정수 

60

메트릭 메시지를 메트릭 주제 대상에 생성하는 시간 간격(초) 

imq.metrics.topic.persist

부울 

false

메트릭 주제 대상으로 보낸 메트릭 메시지가 지속적입니까?  

imq.metrics.topic.timetolive

정수 

300

메트릭 주제 대상으로 보낸 메트릭 메시지의 수명(초) 

클러스터 구성 등록 정보

표 14–9는 브로커 클러스터 관련 구성 등록 정보를 나열합니다.

표 14–9 클러스터 구성에 대한 브로커 등록 정보

등록 정보 

유형 

기본값 

설명 

imq.cluster.brokerlist [클러스터의 모든 브로커 값이 동일해야 합니다.]

문자열 

없음 

브로커 주소 목록 

이 목록은 쉼표로 구분된 하나 이상의 주소로 구성됩니다. 각 주소는 hostName: portNumber의 형태로 클러스터 내 브로커의 호스트 이름과 포트 매퍼 포트 번호를 지정합니다.

예:

    host1:3000,host2:8000,ctrlhost


imq.cluster.hostname [클러스터의 각 브로커에 대해 독립적으로 지정할 수 있습니다.]

문자열 

없음 

cluster 연결 서비스에 대한 호스트 이름 또는 IP 주소

이 등록 정보를 지정할 경우 cluster 연결 서비스의 imq.hostname을 무시합니다(표 14–1 참조).

imq.cluster.port

정수 

0

cluster 연결 서비스에 대한 포트 번호

0은 포트 번호를 포트 매퍼에서 동적으로 할당하도록 지정합니다.

imq.cluster.transport

문자열 

tcp

cluster 연결 서비스에 대한 네트워크 전송 프로토콜

브로커 간의 암호화된 보안 메시지를 전달하려면 이 등록 정보를 ssl로 설정합니다.

imq.cluster.url, [imqcmd update bkr 명령과 함께 사용할 수 있습니다.]

문자열 

없음 

cluster 구성 파일의 URL(있는 경우)

예:

    http://webserver/imq/cluster.properties


    (웹 서버의 파일인 경우)


    
    

    file:/net/mfsserver/imq/cluster.properties


    (공유 드라이브의 파일인 경우)


imq.cluster.masterbroker

문자열 

없음 

클러스터 마스터 브로커(있는 경우)의 호스트 이름과 포트 번호 

값의 형식은 hostName: portNumber입니다. 여기서 hostName은 마스터 브로커의 호스트 이름이고 portNumber는 포트 매퍼의 포트 번호입니다.

예:

    ctrlhost:7676


알파벳 순 브로커 등록 정보 목록

알파벳 순 브로커 등록 정보 목록은 알파벳 순 브로커 구성 등록 정보 목록이며, 이 장에서 관련 표에 대한 상호 참조를 제공합니다.

표 14–10 알파벳 순 브로커 등록 정보 목록

등록 정보 

표 

imq.accesscontrol.enabled

표 14–7

imq.accesscontrol.file.filename

표 14–7

imq.audit.enabled

표 14–7

imq.authentication.basic.user_repository

표 14–7

imq.authentication.client.response.timeout

표 14–7

imq.authentication.type

표 14–7

imq.autocreate.destination.isLocalOnly

표 14–3

imq.autocreate.destination.limitBehavior

표 14–3

imq.autocreate.destination.maxBytesPerMsg

표 14–3

imq.autocreate.destination.maxNumMsgs

표 14–3

imq.autocreate.destination.maxNumProducers

표 14–3

imq.autocreate.destination.maxTotalMsgBytes

표 14–3

imq.autocreate.destination.useDMQ

표 14–3

imq.autocreate.queue

표 14–3

imq.autocreate.queue.consumerFlowLimit

표 14–3

imq.autocreate.queue.localDeliveryPreferred

표 14–3

imq.autocreate.queue.maxNumActiveConsumers

표 14–3

imq.autocreate.queue.maxNumBackupConsumers

표 14–3

imq.autocreate.topic

표 14–3

imq.autocreate.topic.consumerFlowLimit

표 14–3

imq.cluster.brokerlist

표 14–9

imq.cluster.hostname

표 14–9

imq.cluster.masterbroker

표 14–9

imq.cluster.port

표 14–9

imq.cluster.transport

표 14–9

imq.cluster.url

표 14–9

imq.destination.DMQ.truncateBody

표 14–2

imq.destination.logDeadMsgs

표 14–8

imq.hostname

표 14–1

imq.imqcmd.password

표 14–7

imq.keystore.file.dirpath

표 14–7

imq.keystore.file.name

표 14–7

imq.keystore.password

표 14–7

imq.keystore.propertyName

표 14–7

imq.log.console.output

표 14–8

imq.log.console.stream

표 14–8

imq.log.file.dirpath

표 14–8

imq.log.file.filename

표 14–8

imq.log.file.output

표 14–8

imq.log.file.rolloverbytes

표 14–8

imq.log.file.rolloversecs

표 14–8

imq.log.level

표 14–8

imq.log.syslog.facility

표 14–8

imq.log.syslog.identity

표 14–8

imq.log.syslog.logconsole

표 14–8

imq.log.syslog.logpid

표 14–8

imq.log.syslog.output

표 14–8

imq.log.timezone

표 14–8

imq.message.expiration.interval

표 14–2

imq.message.max_size

표 14–2

imq.metrics.enabled

표 14–8

imq.metrics.interval

표 14–8

imq.metrics.topic.enabled

표 14–8

imq.metrics.topic.interval

표 14–8

imq.metrics.topic.persist

표 14–8

imq.metrics.topic.timetolive

표 14–8

imq.passfile.dirpath

표 14–7

imq.passfile.enabled

표 14–7

imq.passfile.name

표 14–7

imq.persist.file.destination.message.filepool.limit

표 14–5

imq.persist.file.message.cleanup

표 14–5

imq.persist.file.message.filepool.cleanratio

표 14–5

imq.persist.file.message.max_record_size

표 14–5

imq.persist.file.sync.enabled

표 14–5

imq.persist.jdbc.brokerid

표 14–6

imq.persist.jdbc.closedburl

표 14–6

imq.persist.jdbc.createdburl

표 14–6

imq.persist.jdbc.driver

표 14–6

imq.persist.jdbc.needpassword

표 14–6

imq.persist.jdbc.opendburl

표 14–6

imq.persist.jdbc.password

표 14–6

imq.persist.jdbc.table.IMQCCREC35

표 14–6

imq.persist.jdbc.table.IMQDEST35

표 14–6

imq.persist.jdbc.table.IMQILIST35

표 14–6

imq.persist.jdbc.table.IMQINT35

표 14–6

imq.persist.jdbc.table.IMQMSG35

표 14–6

imq.persist.jdbc.table.IMQPROPS35

표 14–6

imq.persist.jdbc.table.IMQSV35

표 14–6

imq.persist.jdbc.table.IMQTACK35

표 14–6

imq.persist.jdbc.table.IMQTXN35

표 14–6

imq.persist.jdbc.user

표 14–6

imq.persist.store

표 14–4

imq.ping.interval

표 14–1

imq.portmapper.backlog

표 14–1

imq.portmapper.hostname

표 14–1

imq.portmapper.port

표 14–1

imq.resourceState .count

표 14–2

imq.resourceState .threshold

표 14–2

imq.service.activelist

표 14–1

imq.serviceName .accesscontrol.enabled

표 14–7

imq.serviceName .accesscontrol.file.filename

표 14–7

imq.serviceName .authentication.type

표 14–7

imq.serviceName .max_threads

표 14–1

imq.serviceName .min_threads

표 14–1

imq.serviceName .protocolType.hostname

표 14–1

imq.serviceName .protocolType.port

표 14–1

imq.serviceName .threadpool_model

표 14–1

imq.shared.connectionMonitor_limit

표 14–1

imq.system.max_count

표 14–2

imq.system.max_size

표 14–2

imq.transaction.autorollback

표 14–2

imq.user_repository.ldap.base

표 14–7

imq.user_repository.ldap.gidattr

표 14–7

imq.user_repository.ldap.grpbase

표 14–7

imq.user_repository.ldap.grpfilter

표 14–7

imq.user_repository.ldap.grpsearch

표 14–7

imq.user_repository.ldap.memattr

표 14–7

imq.user_repository.ldap.password

표 14–7

imq.user_repository.ldap.principal

표 14–7

imq.user_repository.ldap.propertyName

표 14–7

imq.user_repository.ldap.server

표 14–7

imq.user_repository.ldap.ssl.enabled

표 14–7

imq.user_repository.ldap.timeout

표 14–7

imq.user_repository.ldap.uidattr

표 14–7

imq.user_repository.ldap.usrfilter

표 14–7

15장 물리적 대상 등록 정보 참조

이 장에서는 물리적 대상의 구성 등록 정보에 대한 참조 정보를 제공합니다. 이러한 등록 정보는 물리적 대상을 작성하거나 업데이트할 때 설정할 수 있습니다. 자동 생성 대상의 경우 브로커의 인스턴스 구성 파일에 기본값을 설정합니다(표 14–3 참조).

물리적 대상 등록 정보

표 15–1 물리적 대상 등록 정보

등록 정보 

유형 

기본값 

설명 

maxNumMsgs [클러스터 환경에서는 클러스터의 모든 인스턴스에 집합적으로 적용되기 보다는 대상의 각 개별 인스턴스에 적용됩니다.]

정수 

-1

사용되지 않은 메시지의 최대 개수 

-1은 무제한 메시지 수를 의미합니다.

사용 불능 메시지 대기열의 경우 기본값은 1000입니다.

maxBytesPerMsg

문자열 

-1

단일 메시지의 최대 크기(바이트) 

지속성 메시지 거부는 예외를 통해 생성 클라이언트에 보고됩니다. 비지속성 메시지에 대해서는 알림이 전송되지 않습니다.  

     

값은 다음 접미사를 사용하여 바이트, 킬로바이트 또는 메가바이트 단위로 표현할 수 있습니다.  

    b: 바이트


    k: 킬로바이트(1024바이트)


    m: 메가바이트(1024 × 1024 = 1,048,576바이트)


     

접미사가 붙지 않은 값은 바이트로 표현됩니다. 값 -1은 무제한 메시지 크기를 의미합니다.

     

예:

    1600: 1600바이트


    1600b: 1600바이트


    16k: 16킬로바이트(= 16,384바이트)


    16m: 16메가바이트(= 16,777,216바이트)


    -1: 제한 없음


maxTotalMsgBytes

문자열 

-1

사용되지 않은 메시지의 최대 총 메모리(바이트)

구문은 maxBytesPerMsg의 구문과 같습니다(위 항목 참조).

사용 불능 메시지 대기열의 경우 기본값은 10m입니다.

limitBehavior

문자열 

REJECT_NEWEST

메모리 제한 임계값에 도달했을 때 브로커 동작:  

    FLOW_CONTROL: 생성자 속도 늦추기


    REMOVE_OLDEST: 가장 오래된 메시지 제거


    REMOVE_LOW_PRIORITY: 메시지의 보존 기간을 기준으로 우선 순위가 가장 낮은 메시지 삭제(생성자 클라이언트에 알리지 않음)


    REJECT_NEWEST: 최근 메시지 거부(지속성 메시지의 경우에만 생성자 클라이언트에 예외 알림)


     

값이 REMOVE_OLDEST 또는 REMOVE_LOW_PRIORITY이고 useDMQ 등록 정보가 true인 경우 초과 메시지는 사용 불능 메시지 대기열로 이동됩니다. 사용 불능 메시지 대기열 자체의 경우, 기본 제한 동작은 REMOVE_OLDEST이며 FLOW_CONTROL로 설정할 수 없습니다.

maxNumProducers [사용 불능 메시지 대기열에 대해 설정할 수 없습니다.]

정수 

-1

대상에 대한 최대 메시지 생성자 수

이 제한에 도달하면 새로운 생성자가 생성되지 않습니다. 값 -1은 무제한 생성자 수를 의미합니다.

maxNumActiveConsumers [대기열 대상에만 해당]

정수 

1

대기열 대상에서 로드 균형 조정 전달 시 최대 활성 메시지 사용자 수

-1은 무제한 사용자 수를 의미합니다. Sun Java System Message QueueTM 플랫폼판의 경우 값은 2로 제한됩니다.

maxNumBackupConsumers

정수 

0

대기열 대상에서 로드 균형 조정 전달 시 최대 백업 메시지 사용자 수

-1은 무제한 사용자 수를 의미합니다. Sun Java System Message Queue 플랫폼판의 경우 값은 1로 제한됩니다.

consumerFlowLimit

정수 

1000

단일 일괄 처리에서 사용자에게 전달되는 최대 메시지 수

로드 균형 조정된 대기열 전달에서 이 수는 로드 균형 조정을 시작하기 전에 활성 사용자에게 라우팅되는 초기 대기 메시지 수입니다. 대상 사용자는 연결에 대해 낮은 값을 지정하여 이 제한을 무시할 수 있습니다.  

-1은 무제한 메시지 수를 의미합니다.

isLocalOnly

부울 

false

로컬 전달만 하시겠습니까?  

이 등록 정보는 브로커 클러스터의 대상에만 적용되며 대상을 만들고 나면 변경할 수 없습니다. 값이 true이면 대상을 다른 브로커에 복사하지 않으므로 메시지 전달이 로컬 사용자(대상이 생성된 브로커에 연결된 사용자)에게만 제한됩니다.

localDeliveryPreferred ,

부울 

false

로컬 전달을 선호합니까?  

이 등록 정보는 브로커 클러스터의 로드 균형 조정된 대기열 전달에만 적용됩니다. 값이 true이면 로컬 브로커에 사용자가 없는 경우에만 메시지가 원격 사용자에게 전달됩니다. 대상이 로컬 전용 전달로 제한되지 않아야 합니다(isLocalOnlyfalse여야 함).

useDMQ

부울 

true

사용 불능 메시지를 사용 불능 메시지 대기열로 보내겠습니까?  

값이 false이면 사용 불능 메시지가 삭제됩니다.

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


17장 JMS 자원 어댑터 등록 정보 참조

이 장에서는 Message QueueTM JMS 자원 어댑터(JMS RA)의 구성 등록 정보에 대해 설명합니다. JMS 자원 어댑터를 사용하면 표준 J2EE Connector Architecture(JCA)를 통해 Sun Java SystemTM Message Queue를 J2EE 1.4 Application Server에 통합할 수 있습니다. 응용 프로그램 서버에 연결하면 해당 응용 프로그램 서버에 배포된 응용 프로그램은 자원 어댑터를 통해 Message Queue에서 JMS 메시지를 보내고 받을 수 있습니다.

Message Queue JMS 자원 어댑터는 세 가지 JavaBean 세 구성 요소를 통해서 구성 등록 정보를 제공합니다.

이러한 엔티티에 대한 등록 정보 값을 설정하려면 자원 어댑터 구성/배포 및 MDB 배포를 위해 응용 프로그램 서버에서 제공하는 도구를 사용합니다.

이 장에서는 Message Queue JMS 자원 어댑터의 구성 등록 정보를 나열하고 설명합니다. 이 장은 다음 내용으로 구성되어 있습니다.

ResourceAdapter JavaBean

ResourceAdapter 구성은 기본 JMS 자원 어댑터 동작을 구성합니다. 표 17–1에서는 이 JavaBean을 구성할 때 사용할 수 있는 등록 정보를 나열하고 설명합니다.

표 17–1 자원 어댑터 등록 정보

등록 정보 

유형 

기본값 

설명 

addressList

문자열 

mq://localhost:7676/jms

(필수) Message Queue 서비스에 연결하기 위한 메시지 서비스 주소

connectionURL(아래)과 동일하며 둘 중 하나를 선택해야 합니다.

connectionURL

문자열 

mq://localhost:7676/jms

 

Message Queue 서비스에 연결하기 위한 메시지 서비스 주소 

addressList(위)와 동일하며 둘 중 하나를 선택해야 합니다.

userName

문자열 

guest

(필수) Message Queue 서비스에 연결하기 위한 기본 사용자 이름

password

문자열 

guest

(필수) Message Queue 서비스에 연결하기 위한 기본 비밀번호

addressListBehavior

문자열 

PRIORITY

Message Queue 서비스에 대한 연결 시도 순서:  

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


    RANDOM: 임의의 순서



주 –

연결에 실패한 브로커에서는 연결 실패 후에 재연결 시도를 시작하고 이 우선 순위 설정 값에 상관없이 주소 목록을 순차적으로 처리합니다.


addressListIterations

정수 

1

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

reconnectEnabled

부울 

false

손실된 연결을 다시 연결하시겠습니까?

reconnectAttempts

정수 

6

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

reconnectInterval

긴 정수 

30000

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

ManagedConnectionFactory JavaBean

관리 대상 연결 팩토리는 자원 어댑터가 message-driven bean에 제공하는 연결을 정의합니다. 표 17–2에서는 ManagedConnectionFactory JavaBean의 등록 정보를 보여 줍니다. 이러한 등록 정보는 설정된 경우 ResourceAdapter JavaBean의 해당 등록 정보를 무시합니다.

표 17–2 관리 대상 연결 팩토리 등록 정보

등록 정보 

유형 

기본값 

설명 

addressList

문자열 

ResourceAdapter JavaBean에서 상속됨(표 17–1 참조)

Message Queue 서비스에 연결하기 위한 메시지 서비스 주소 목록 

userName

문자열 

guest

(선택 사항) Message Queue 서비스에 연결하기 위한 사용자 이름

password

문자열 

guest

(선택 사항) Message Queue 서비스에 연결하기 위한 비밀번호

clientID

문자열 

없음 

Message Queue 서비스에 연결하기 위한 클라이언트 식별자 

addressListBehavior

문자열 

PRIORITY

Message Queue 서비스에 대한 연결 시도 순서:  

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


    RANDOM: 임의의 순서



주 –

연결 실패한 브로커에서는 연결 실패 후에 재연결 시도를 시작하고 이 우선 순위 설정 값에 상관없이 주소 목록을 순차적으로 처리합니다.


addressListIterations

정수 

1

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

reconnectEnabled

부울 

false

손실된 연결을 다시 연결하시겠습니까?

reconnectAttempts

정수 

6

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

reconnectInterval

긴 정수 

30000

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

ActivationSpec JavaBean

표 17–3에서는 ActivationSpec JavaBean의 구성 등록 정보를 보여줍니다. 이러한 등록 정보는 응용 프로그램 서버에서 자원 어댑터에 메시지 종점을 활성화하여 message-driven bean에 연결하도록 지시하는 데 사용됩니다.

표 17–3 활성화 사양 등록 정보

등록 정보 

유형 

기본값 

설명 

addressList [Message Queue JMS 자원 어댑터에 관련된 등록 정보]

문자열 

ResourceAdapter JavaBean에서 상속됨

(선택 사항) Message Queue 서비스에 연결하기 위한 메시지 서비스 주소

destination [표준 Enterprise JavaBean(EJB) 및 J2EE Connector Architecture(CA) 등록 정보]

문자열 

없음 

(필수) 메시지를 사용할 대상의 이름

값은 Message Queue 대상 관리 객체에 대한 destinationName 등록 정보 값이어야 합니다.

destinationType

문자열 

없음 

(필수) destination 등록 정보에 의해 지정되는 대상 유형:

    javax.jms.Queue: 대기열 대상


    javax.jms.Topic: 주제 대상


messageSelector

문자열 

없음 

(선택 사항) 사용자에게 전달되는 메시지를 필터링하기 위한 메시지 선택기

subscriptionName

문자열 

없음 

영구 가입 이름 

subscriptionDurabilityDurable로 설정되어 있는 경우 이 등록 정보를 설정해야 합니다.

subscriptionDurability

문자열 

NonDurable

주제 대상의 사용자 지속성:  

    Durable: 영구 사용자


    NonDurable: 비영구 사용자


이 등록 정보는 destinationTypejavax.jms.Topic으로 설정되어 있는 경우에만 유효하며, 비영구 가입의 경우 선택 사항이고 영구 가입의 경우 필수 사항입니다. Durable로 설정된 경우 clientIDsubscriptionName 등록 정보도 설정해야 합니다.

clientId

문자열 

없음 

Message Queue 서비스에 연결하기 위한 클라이언트 ID 

subscriptionDurabilityDurable로 설정되어 있는 경우 이 등록 정보를 설정해야 합니다.

acknowledgeMode

문자열 

Auto-acknowledge

(선택 사항) 확인 모드:

    Auto-acknowledge: 자동 승인 모드


    Dups-ok-acknowledge: Dups-OK-acknowledge 모드


customAcknowledgeMode

문자열 

없음 

MDB 메시지 사용을 위한 확인 모드

유효한 값은 No_acknowledge 또는 null입니다.

트랜잭션되지 않은 비영구 주제 가입에 대해서만 no-acknowledge 모드를 사용할 수 있습니다. 트랜잭션 가입이나 영구 가입에 대해 이 설정을 사용하면 가입이 활성화되지 않습니다.  

endpointExceptionRedeliveryAttempts

정수 

6

MDB가 메시지 전달 중에 예외를 발생하는 경우에 메시지를 다시 전달하는 횟수

sendUndeliverableMsgsToDMQ

부울 

true

MDB에서 런타임 예외가 발생하고 재전달 시도 횟수가 endpointExceptionRedeliveryAttempts 값을 초과할 경우 메시지를 사용 불능 메시지 대기열에 넣습니까?

값이 false이면 Message Queue 브로커는 동일한 MDB를 포함하여 유효한 사용자에게 메시지를 재전송하려고 시도합니다.

18장 메트릭 참조

이 장에서는 Message QueueTM 메시지 브로커가 모니터링, 조정 및 진단을 위해 제공할 수 있는 메트릭 정보에 대해 설명합니다. 이 정보는 다양한 방식으로 사용할 수 있습니다.

이 장의 표에는 사용 가능한 다양한 메트릭 정보와 해당 정보가 제공될 수 있는 양식이 나열됩니다. 명령 유틸리티의 metrics bkr 명령을 통해 제공되는 메트릭의 경우 요청하는 데 사용할 수 있는 메트릭 유형이 표에 나열되고, 메트릭 메시지로 제공되는 메트릭의 경우 전달되는 메트릭 주제 대상이 표에 나열됩니다. 이 장은 다음 내용으로 구성되어 있습니다.

JVM 메트릭

표 18–1에서는 브로커가 브로커 프로세스JVM(Java Virtual Machine) 힙에 대해 보고하는 메트릭 정보를 보여줍니다.

표 18–1 JVM 메트릭

메트릭 개수 

설명 

로그 파일 여부 

metrics bkr메트릭 유형

메트릭 주제 

JVM 힙: 전체 메모리

현재 전체 메모리(바이트) 

예 

cxn

mq.metrics.jvm

JVM 힙: 사용 가능한 메모리

현재 사용할 수 있는 메모리 양(바이트) 

예 

cxn

mq.metrics.jvm

JVM 힙: 최대 메모리

허용 가능한 최대 힙 크기(바이트) 

예 

없음 

mq.metrics.jvm

브로커 전체 메트릭

표 18–2에서는 브로커에서 보고하는 브로커 전체 메트릭 정보를 보여줍니다.

표 18–2 브로커 전체 메트릭

메트릭 개수 

설명 

로그 파일 여부 

metrics bkr메트릭 유형

메트릭 주제 

연결

Num connections 

모든 연결 서비스에 대한 총 현재 연결 수 

예 

cxn

mq.metrics.broker

Num threads 

모든 연결 서비스에 대한 총 현재 스레드 수 

예 

cxn

없음 

최소 스레드 

모든 연결 서비스에 대한 총 최소 스레드 수 

예 

cxn

없음 

최대 스레드 

모든 연결 서비스에 대한 총 최대 스레드 수 

예 

cxn

없음 

저장된 메시지

Num messages 

메모리 및 영구 저장소에 저장된 현재 페이로드 메시지 수 

아니요 

없음 [query bkr 명령을 대신 사용]

mq.metrics.broker

총 메시지 바이트 수 

메모리 및 영구 저장소에 현재 저장된 총 페이로드 메시지 크기(바이트) 

아니요 

없음

mq.metrics.broker

메시지 흐름

Num messages in 

브로커가 시작된 이후에 받은 누적 페이로드 메시지 수 

예 

ttl

mq.metrics.broker

Num messages out 

브로커가 시작된 이후에 보낸 누적 페이로드 메시지 수 

예 

ttl

mq.metrics.broker

Rate messages in 

브로커로 페이로드 메시지가 유입되는 현재 속도 

예 

rts

없음 

Rate messages out 

브로커에서 페이로드 메시지가 유출되는 현재 속도 

예 

rts

없음 

Message bytes in 

브로커가 시작된 이후에 받은 누적 페이로드 메시지 크기(바이트) 

예 

ttl

mq.metrics.broker

Message bytes out 

브로커가 시작된 이후에 보낸 누적 페이로드 메시지 크기(바이트) 

예 

ttl

mq.metrics.broker

Rate message bytes in 

브로커로 페이로드 메시지 바이트가 유입되는 현재 속도 

예 

rts

없음 

Rate message bytes out 

브로커에서 페이로드 메시지 바이트가 유출되는 현재 속도 

예 

rts

없음 

Num packets in 

브로커가 시작된 이후에 받은 누적 페이로드 및 제어 패킷 수 

예 

ttl

mq.metrics.broker

Num packets out 

브로커가 시작된 이후에 보낸 누적 페이로드 및 제어 패킷 수 

예 

ttl

mq.metrics.broker

Rate packets in 

브로커로 유입되는 페이로드 및 제어 패킷의 현재 흐름 속도 

예 

rts

없음 

Rate packets out 

브로커에서 유출되는 페이로드 및 제어 패킷의 현재 흐름 속도 

예 

rts

없음 

Packet bytes in 

브로커가 시작된 이후에 받은 누적 페이로드 및 제어 패킷 크기(바이트) 

예 

ttl

mq.metrics.broker

Packet bytes out 

브로커가 시작된 이후에 보낸 누적 페이로드 및 제어 패킷 크기(바이트) 

예 

ttl

mq.metrics.broker

Rate packet bytes in 

브로커로 유입되는 페이로드 및 제어 패킷 바이트의 현재 흐름 속도 

예 

rts

없음 

Rate packet bytes out 

브로커에서 유출되는 페이로드 및 제어 패킷 바이트의 현재 흐름 속도 

예 

rts

없음 

대상

Num destinations 

현재 물리적 대상 수 

아니요 

없음 

mq.metrics.broker

연결 서비스 메트릭

표 18–3에서는 브로커가 개별 연결 서비스에 대해 보고하는 메트릭 정보를 보여줍니다.

표 18–3 연결 서비스 메트릭

메트릭 개수 

설명 

로그 파일 여부 

metrics svc 메트릭 유형

메트릭 주제 

연결

Num connections 

현재 연결 수 

아니요 

cxn [query svc 명령에서도 사용 가능]

없음 

Num threads 

현재 스레드 수 

아니요 

cxn

없음 

최소 스레드 

서비스에 할당된 최소 스레드 수 

아니요 

cxn

없음 

최대 스레드 

서비스에 할당된 최대 스레드 수 

아니요 

cxn

없음 

메시지 흐름

Num messages in 

브로커가 시작된 이후에 연결 서비스를 통해 받은 누적 페이로드 메시지 수 

아니요 

ttl

없음 

Num messages out 

브로커가 시작된 이후에 연결 서비스를 통해 보낸 현재 페이로드 메시지 수 

아니요 

ttl

없음 

Rate messages in 

연결 서비스를 통해 페이로드 메시지가 브로커로 유입되는 현재 속도 

아니요 

rts

없음 

Rate messages out 

연결 서비스를 통해 페이로드 메시지가 브로커에서 유출되는 현재 속도 

아니요 

rts

없음 

Message bytes in 

브로커가 시작된 이후에 연결 서비스를 통해 받은 누적 페이로드 메시지 크기(바이트) 

아니요 

ttl

없음 

Message bytes out 

브로커가 시작된 이후에 연결 서비스를 통해 보낸 누적 페이로드 메시지 크기(바이트) 

아니요 

ttl

없음 

Rate message bytes in 

연결 서비스를 통해 페이로드 메시지 바이트가 브로커로 유입되는 현재 속도 

아니요 

rts

없음 

Rate message bytes out 

연결 서비스를 통해 페이로드 메시지 바이트가 브로커에서 유출되는 현재 속도 

아니요 

rts

없음 

Num packets in 

브로커가 시작된 이후에 연결 서비스를 통해 받은 누적 페이로드 및 제어 패킷 수 

아니요 

ttl

없음 

Num packets out 

브로커가 시작된 이후에 연결 서비스를 통해 보낸 누적 페이로드 및 제어 패킷 수 

아니요 

ttl

없음 

Rate packets in 

연결 서비스를 통해 페이로드 및 제어 패킷이 브로커로 유입되는 현재 속도 

아니요 

rts

없음 

Rate packets out 

연결 서비스를 통해 페이로드 및 제어 패킷이 브로커에서 유출되는 현재 속도 

아니요 

rts

없음 

Packet bytes in 

브로커가 시작된 이후에 연결 서비스를 통해 받은 누적 페이로드 및 제어 패킷 크기(바이트) 

아니요 

ttl

없음 

Packet bytes out 

브로커가 시작된 이후에 연결 서비스를 통해 보낸 누적 페이로드 및 제어 패킷 크기(바이트) 

아니요 

ttl

없음 

Rate packet bytes in 

연결 서비스를 통해 페이로드 및 제어 패킷 바이트가 브로커로 유입되는 현재 속도 

아니요 

rts

없음 

Rate packet bytes out 

연결 서비스를 통해 페이로드 및 제어 패킷 바이트가 브로커에서 유출되는 현재 속도 

아니요 

rts

없음 

대상 메트릭

표 18–4에서는 브로커가 개별 대상에 대해 보고하는 메트릭 정보를 보여줍니다.

표 18–4 대상 메트릭

메트릭 개수 

설명 

로그 파일 여부 

metrics dst메트릭 유형

메트릭 주제 

메시지 사용자

Num consumers 

현재 연결된 메시지 사용자 수 

대기열 대상의 경우 이 속성은 활성 사용자와 백업 사용자를 모두 포함합니다. 주제 대상의 경우 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Num active consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Peak num consumers 

브로커가 시작된 이후에 연결된 최대 메시지 사용자 수 

대기열 대상의 경우 이 속성은 활성 사용자와 백업 사용자를 모두 포함합니다. 주제 대상의 경우 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Peak num active consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Avg num consumers 

브로커가 시작된 이후에 연결된 평균 메시지 사용자 수 

대기열 대상의 경우 이 속성은 활성 사용자와 백업 사용자를 모두 포함합니다. 주제 대상의 경우 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Avg num active consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Num active consumers 

현재 연결된 활성 메시지 사용자 수 

주제 대상의 경우 이 속성은 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Num consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Peak num active consumers 

브로커가 시작된 이후에 연결된 최대 활성 메시지 사용자 수 

주제 대상의 경우 이 속성은 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Peak num consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Avg num active consumers 

브로커가 시작된 이후에 연결된 평균 활성 메시지 사용자 수 

주제 대상의 경우 이 속성은 비영구 및 (활성 및 비활성) 영구 가입자를 포함하며 "Avg num consumers"와 같습니다.” 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Num backup consumers [대기열 대상에만 해당]

현재 연결된 백업 메시지 사용자 수 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Peak num backup consumers

브로커가 시작된 이후에 연결된 최대 백업 메시지 사용자 수 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Avg num backup consumers

브로커가 시작된 이후에 연결된 평균 백업 메시지 사용자 수 

아니요 

con

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

저장된 메시지

Num messages 

메모리 및 영구 저장소에 저장된 현재 메시지 수 

아니요 

conttlrts [query dst 명령에서도 사용 가능]

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Peak num messages 

브로커가 시작된 이후에 메모리 및 영구 저장소에 저장된 최대 메시지 수 

아니요 

conttlrts

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Avg num messages 

브로커가 시작된 이후에 메모리 및 영구 저장소에 저장된 평균 메시지 수 

아니요 

conttlrts

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

총 메시지 바이트 수 

메모리 및 영구 저장소에 저장된 현재 메시지의 총 크기(바이트) 

아니요 

ttlrts

mq.metrics.destination.queue.queueName mq.metrics.destination.topic.topicName

Peak total message bytes 

브로커가 시작된 이후에 메모리 및 영구 저장소에 저장된 최대 총 메시지 크기(바이트) 

아니요 

ttlrts

mq.metrics.destination.queue.queueName mq.metrics.destination.topic.topicName

Avg total message bytes 

브로커가 시작된 이후에 메모리 및 영구 저장소에 저장된 평균 총 메시지 크기(바이트) 

아니요 

ttlrts

mq.metrics.destination.queue.queueName mq.metrics.destination.topic.topicName

메시지 흐름

Num messages in 

브로커가 시작된 이후에 받은 누적 메시지 수 

아니요 

ttl

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Num messages out 

브로커가 시작된 이후에 보낸 누적 메시지 수 

아니요 

ttl

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Msg bytes in 

브로커가 시작된 이후에 받은 누적 메시지 크기(바이트) 

아니요 

ttl

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Msg bytes out 

브로커가 시작된 이후에 보낸 누적 메시지 크기(바이트) 

아니요 

ttl

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Peak message bytes 

브로커가 시작된 이후에 받은 가장 큰 단일 메시지 크기(바이트) 

아니요 

ttlrts

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Rate num messages in 

받은 메시지의 현재 흐름 속도 

아니요 

rts

없음 

Rate num messages out 

보낸 메시지의 현재 흐름 속도 

아니요 

rts

없음 

Rate msg bytes in 

받은 메시지 바이트의 현재 흐름 속도 

아니요 

rts

없음 

Rate msg bytes out 

보낸 메시지 바이트의 현재 흐름 속도 

아니요 

rts

없음 

디스크 사용률

Disk reserved [파일 기반 지속성에만 해당]

대상에 대해 예약된 디스크 공간의 양(바이트) 

아니요 

dsk

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Disk used

대상이 현재 사용 중인 디스크 공간의 양(바이트) 

아니요 

dsk

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName

Disk utilization ratio

대상에 대해 예약된 디스크 공간을 기준으로 한 사용 중인 디스크 공간 비율 

아니요 

dsk

mq.metrics.destination.queue. queueNamemq.metrics.destination.topic. topicName