게이트웨이 CLOPT 절
본 장에서는 Tmax 도메인 게이트웨이, Java 게이트웨이, Tuxedo 게이트웨이의 CLOPT 항목의 설정 옵션에 대해 설명한다.
1. Tmax
다음은 Tmax 도메인 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
1.1. Tmax 트랜잭션 도메인 게이트웨이
GWTYPE이 "TMAX"인 게이트웨이의 CLOPT 항목 옵션을 설명한다.
옵션 | 설명 |
---|---|
[-r] |
GATEWAY 절의 CLOPT에서 [-r] 옵션 설명과 동일하다. |
[-h] |
GATEWAY 절의 CLOPT에서 [-h] 옵션 설명과 동일하다. |
[-i] |
옵션이 설정되지 않을 경우 리모트 게이트웨이와 연결하지 않은 상태에서는 요청이 있을 경우에만 리모트 게이트웨이로 연결을 시도한다. 옵션이 설정되어 있는 경우에는 설정의 NLIVEINQ 주기로 연결을 시도한다. 이 연결이 없는 상태에서 요청은 TPNOREADY로 클라이언트에게 응답한다. |
[-R DECISION] |
리모트 게이트웨이의 버전이 Tmax 3.x 버전일 경우 설정한다. 리모트 게이트웨이에서 시작한 트랜잭션에 대해 로컬에서 Pending 트랜잭션이 발생한 경우 트랜잭션에 대해서 게이트웨이에서 rollback할 것인지 commit할 것인지에 대해서 결정해야 한다.
|
[-c TIME] |
게이트웨이와 CLH 연결이 종료되어 있는 경우 TIME 주기로 CLH에 연결을 시도한다. |
[-p configuration file path] |
GATEWAY 절의 CLOPT에서 -p 옵션 설명과 동일하다. |
[-l ip-addr,ip-addr2…] |
L4는 ALIVE CHECK를 위해서 Gateway에 주기적으로 PING을 던지고 연결을 강제로 해제하는 작업을 한다. 이 경우마다 연결이 끊어졌다는 로그를 GATEWAY가 남기게 됨으로써 불필요한 정보가 많이 쌓이게 되는 문제점이 발생한다. 해당 옵션을 설정할 때 이와 같이 PING으로 인한 연결을 구분하여 불필요한 로그를 남기지 않도록 한다. |
[-m] |
SERVER 절의 MAC = Y 기능과 동일하게 TMM이 종료되면 tmgw(nt)도 종료한다. |
[-k] |
GATEWAY 절의 CLOPT에서 -k 옵션 설명과 동일하다. |
[-x] |
연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
1.2. Tmax Non 트랜잭션 도메인 게이트웨이
GWTYPE이 "TMAXNONTX"인 게이트웨이의 CLOPT 항목 옵션을 설명한다.
옵션 | 설명 |
---|---|
[-h] |
GATEWAY 절의 CLOPT에서 -h 옵션 설명과 동일하다. |
[-i] |
옵션이 설정되어 있는 경우에는 설정의 NLIVEINQ 주기로 연결을 시도한다. 이 연결이 없는 상태에서 요청은 TPNOREADY로 클라이언트에게 응답한다. 옵션이 설정되지 않을 경우 리모트 게이트웨이와 연결하지 않은 상태에서는 요청이 있을 경우에만 리모트 게이트웨이로 연결을 시도한다. |
[-c TIME] |
게이트웨이와 CLH 연결이 종료되어 있는 경우 TIME 주기로 CLH에 연결을 시도한다. |
[-n] |
Tmax의 게이트웨이 사이의 채널 수는 2개로 고정되어 있다. 이로 인해 먼저 보낸 전문 1이 채널 1로 나중에 보낸 전문2가 채널2로 GW1을 통해 보냈을 때 받는 GW2 쪽에서 전문2가 먼저 도착해서 처리되는 상황이 발생할 수 있다. 이를 방지하기 위해 환경설정 파일에서 GATEWAY 절의 CLOPT에 [-n] 옵션을 추가하면 게이트웨이 사이의 채널 수를 1개로 설정할수 있다. [-n] 옵션은 인자를 받지 않는다. |
[-p configuration file path] |
GATEWAY 절의 CLOPT에서 -p 옵션 설명과 동일하다. |
[-l ip-addr,ip-addr2…] |
Tmax 트랜잭션 도메인 게이트웨이 -l 옵션 설명과 동일하다. |
[-m] |
SERVER 절의 MAC = Y 기능과 동일하게 tmm이 종료되면 tmgw(nt)도 종료한다. |
[-k] |
GATEWAY 절의 CLOPT에서 -k 옵션 설명과 동일하다. |
[-x] |
연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
2. Java
다음은 Java 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
2.1. JEUS 게이트웨이
GWTYPE이 "JEUS"인 게이트웨이의 CLOPT 항목 옵션을 설명한다.
옵션 | 설명 |
---|---|
[-D DEBUG_LEVEL] |
디버그 레벨을 결정한다.
파이프(|) 연산을 하여 출력할 로그를 결정할 수 있다. 운영 중에 tmadmin의 setopt 명령을 통해 동적으로 변경할 수 있다. |
[-e LOGFILE_PATH] |
표준 에러를 저장할 로그 파일 경로를 설정한다. |
[-o LOGFILE_PATH] |
표준 출력을 저장할 로그 파일 경로를 설정한다. |
[-r] |
XA 사용시 리커버리 옵션으로 항상 설정해야 한다. XA 처리를 위한 옵션으로 설정 하지 않을 경우 XA 요청은 NONXA로 처리 되어 에러가 발생한다. NONXA일 경우 설정할 필요가 없다. |
[-A second] |
기존의 GATEWAY 절이나 DOMAIN 절에 설정된 NLIVEINQ 값을 사용하지 않고 -A 옵션으로 지정한 시간(sec)을 alive 체크 주기로 사용한다. 외부와 연결된 커넥션으로 alive 체크를 시도하는 주기 및 설정한 시간 이상으로 응답이 오지 않는다면 연결을 종료시킨다.
IN-CHANEL은 alive 체크를 하지 않는다. |
[-h VERSION] |
|
[-t] |
여러 도메인에서 한 JTmax로 연결할 때 반드시 설정해야 한다. 여러 도메인이 한 JTmax로 연결하는 환경에서 옵션이 미설정될 때 복구 작업이 비정상적으로 동작한다. |
[-H] |
설정하면 로그를 출력할 때 alive 체크 메시지는 출력하지 않는다. |
[-x] |
연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
2.2. JEUS Async 게이트웨이
GWTYPE이 "JEUS_ASYNC"인 게이트웨이의 CLOPT 항목 옵션을 설명한다.
옵션 | 설명 |
---|---|
[-D DEBUG_LEVEL] |
디버그 레벨을 결정한다.
파이프(|) 연산을 하여 출력할 로그를 결정할 수 있다. 운영 중에 tmadmin의 setopt 명령을 통해 동적으로 변경할 수 있다. |
[-e LOGFILE_PATH] |
표준 에러를 저장할 로그 파일 경로를 설정한다. |
[-o LOGFILE_PATH] |
표준 출력을 저장할 로그 파일 경로를 설정한다. |
[-r] |
XA를 사용하는 경우 리커버리 옵션으로 항상 설정해야 한다. XA 처리를 위한 옵션으로 설정 하지 않을 경우 XA 요청은 NONXA로 처리 되어 에러가 발생한다. NONXA일 경우 설정할 필요가 없다. |
[-h 4] |
항상 4로 설정해야 한다. |
[-A second] |
기존의 GATEWAY 절이나 DOMAIN 절에 설정된 NLIVEINQ 값을 사용하지 않고 -A 옵션으로 지정한 시간(sec)을 alive 체크 주기로 사용한다. 외부와 연결된 커넥션으로 alive 체크를 시도하는 주기 및 설정한 시간 이상으로 응답이 오지 않는다면 연결을 종료시킨다.
IN-CHANEL은 alive 체크를 하지 않는다. |
[-a FILE_PATH] |
RGWADDR, RGWPORTNO와 설정한 파일의 "IP:PORT" 리스트로 연결을 맺는다. 한 트랜잭션에 대해서는 같은 채널로 메시지를 전송한다. 기본은 라운드 로빈으로 각 채널당 1번씩 메시지를 전송한다. 파일은 라인당 하나의 "ip:port" 형식으로 입력한다. |
[-H] |
설정하면 로그를 출력할 때 alive 체크 메시지는 출력하지 않도록 한다. |
[-t] |
여러 도메인에서 한 JTmax로 연결할 때 반드시 설정해야 한다. 여러 도메인이 한 JTmax로 연결하는 환경에서 이 옵션을 미설정하는 경우 복구 작업이 비정상적으로 동작한다. |
[-m MAX_COUNT] |
게이트웨이에서 JTmax로 요청할 수 있는 요청 제한 건수를 설정한다. (기본값: 500) |
[-x] |
연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
3. Tuxedo
다음은 Tuxedo 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
3.1. Tuxedo 게이트웨이
GWTYPE이 "TUXEDO"인 게이트웨이의 CLOPT 항목 옵션을 설명한다.
옵션 | 설명 |
---|---|
[-a LOCAL_DOMAIN_NAME] |
Tuxedo의 도메인 게이트웨이와 연결하기 위해서 사용하는 도메인명을 설정한다. 이 항목이 설정되어 있지 않으면 다음 에러 메시지를 출력한다. 3005 gateway name (-a domname) not defined |
[-e LOGFILE_PATH] |
표준 에러를 저장할 로그 파일 경로를 설정한다. |
[-o LOGFILE_PATH] |
표준 출력을 저장할 로그 파일 경로를 설정한다. |
[-u UID] |
ACL을 사용하는 경우 Tmax 클라이언트가 시작하지 않은 call이 요청될 수 있으므로 UID를 지정한다. |
[-F] |
Tuxedo에서 전송하는 메시지 타입이 FML16일 경우 설정한다. 설정하지 않으면 FML32로 처리한다. |
[-v] |
Tuxedo에서 전송하는 메시지 타입이 VIEW16일 경우 설정한다. 설정하지 않으면 VIEW32로 처리한다. |
[-r REMOTE_DOMAIN_NAME] |
Tuxedo 에서 Tmax로 연결을 시도할 때 인증 작업을 수행한다. REMOTE_DOMAIN_NAME으로 로컬 도메인명이 설정된 Tuxedo 도메인 게이트웨이의 연결만을 허용하는 검사를 수행한다. 인증이 실패하면 다음 에러 메시지를 출력한다. 0046 incorrect local name(REMOTE_DOMAIN_NAME), remote domain name(상대방 로컬 도메인명) |
[-h] |
로컬 게이트웨이를 여러 개를 설정하는 경우 각각의 게이트웨이가 각각 리모트에 연결을 시도하기 때문에 Tmax의 Tuxgw에서는 하나의 연결이 맺어진 이후에 두 번째 연결 시도하는 연결에 대해서는 다음의 에러를 발생시킨다. (E) GATEWAY3010 connection error from remote gateway [TUXGW0002] 이런 메시지가 불필요할 수 있기 때문에 해당 옵션을 적용하면 로그를 출력하지 않는다. |
[-D] |
Tuxedo 게이트웨이를 통해 송수신되는 메시지 중 정상적으로 처리되지 않은 메시지들을 다음과 같은 형식의 정보와 메시지의 이진 데이터로 출력한다. <시간>:discarded [tmax|tuxedo] message(size:<size>) |
[-c time(sec)] |
time 주기로 연결된 TUXEDO로 tpcall 을 수행한다. -C 옵션에 있는 서비스 이름을 호출하며, -C 옵셥이 설정되어 있지 않다면 dus$%@tjq 이름으로 서비스를 호출한다. 만약 time*2까지 응답이 오지 않은 경우에는 연결 종료로 판단하고 연결을 종료한다. |
[-C 서비스명] |
-c 옵션에 의해서 time 주기로 연결된 TUXEDO로 tpcall을 수행하는 경우 사용할 서비스명을 입력한다. |
[-i] |
Tuxedo Gateway가 COUSIN으로 설정되어 있는 경우 채널 장애에 대해서도 정상 스케줄링을 할 수 있도록 하는 기능이다. 기존 채널 IRT와 다른 점은 Tuxedo Gateway가 트랜잭션으로 묶여 있기 때문에 첫 몇 call에 대해서는 실패로 응답을 줄 수 있다. 그 이후에는 정상인 곳으로만 스케줄링한다. |
[-n] |
Tuxedo 게이트웨이와 Tuxedo를 연결할 때 Tuxedo 7.2 이상에서 -t 옵션을 적용하지 않아도 동작하는 기능이다. 이 옵션을 지정하지 않으면 Tuxedo에서 -t 옵션을 반드시 지정해야 한다. |
3.2. Tuxedo Async 게이트웨이
GWTYPE이 "TUXEDO_ASYNC"인 게이트웨이의 CLOPT 항목의 옵션은 앞에서 설명한 Tuxedo 게이트웨이와 동일하다.