본 장에서는 Tmax 도메인 게이트웨이, Java 게이트웨이, Tuxedo 게이트웨이의 CLOPT 항목의 설정 옵션에 대해 설명한다.
다음은 Tmax 도메인 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
GWTYPE이 "TMAX"인 게이트웨이의 CLOPT 항목의 옵션을 설명한다.
| 옵션 | 설명 |
|---|---|
| [-r] | “3.2.6. GATEWAY 절”의 CLOPT에서 [-r] 옵션 설명과 동일하다. |
| [-h] | “3.2.6. GATEWAY 절”의 CLOPT에서 [-h] 옵션 설명과 동일하다. |
| [-i] | 옵션이 설정되지 않을 경우 리모트 게이트웨이와 연결하지 않은 상태에서는 요청이 있을 경우에만 리모트 게이트웨이로 연결을 시도한다. 옵션이 설정되어 있는 경우에는 설정의 NLIVEINQ 주기로 연결을 시도한다. 이 연결이 없는 상태에서 요청은 TPNOREADY로 클라이언트에게 응답한다. |
| [-R DECISION] | 리모트 게이트웨이의 버전이 Tmax 3.x 버전일 경우 설정한다. 리모트 게이트웨이에서 시작한 트랜잭션에 대해 로컬에서 Pending 트랜잭션이 발생한 경우 트랜잭션에 대해서 게이트웨이에서 rollback할 것인지 commit할 것인지에 대해서 결정해야 한다.
|
| [-c TIME] | 게이트웨이와 CLH 연결이 종료되어 있는 경우 TIME 주기로 CLH에 연결을 시도한다. |
| [-p configuration file path] | “3.2.6. GATEWAY 절”의 CLOPT에서 -p 옵션 설명과 동일하다. |
| [-l ip-addr,ip-addr2...] | L4 는 ALIVE CHECK 를 위해서 Gateway 에 주기적으로 PING 을 던지고 연결을 강제로 해제하는 작업을 한다. 이 경우마다 연결이 끊어졌다는 로그를 GATEWAY 가 남기게 됨으로써 불필요한 정보가 많이 쌓이게 되는 문제점이 발생한다. 해당 옵션 설정시 이와 같이 PING 으로 인한 연결을 구분하여 불필요한 로그를 남기지 않도록 한다. |
| [-m] | SERVER 절의 MAC = Y 기능과 동일하게 tmm이 종료되면 tmgw(nt)도 종료한다. |
| [-k] | “3.2.6. GATEWAY 절”의 CLOPT에서 -k 옵션 설명과 동일하다. |
| [-x] | 연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
GWTYPE이 "TMAXNONTX"인 게이트웨이의 CLOPT 항목의 옵션을 설명한다.
| 옵션 | 설명 |
|---|---|
| [-h] | “3.2.6. 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] | “3.2.6. GATEWAY 절”의 CLOPT에서 -p 옵션 설명과 동일하다. |
| [-l ip-addr,ip-addr2...] | Tmax 트랜잭션 도메인 게이트웨이 -l 옵션 설명과 동일하다. |
| [-m] | SERVER 절의 MAC = Y 기능과 동일하게 tmm이 종료되면 tmgw(nt)도 종료한다. |
| [-k] | “3.2.6. GATEWAY 절”의 CLOPT에서 -k 옵션 설명과 동일하다. |
| [-x] | 연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
다음은 Java 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
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 체크를 시도하는 주기 및 설정한 시간 이상으로 응답이 오지 않는다면 연결을 종료시킨다. 응답대기시간 : MIN(30, gwchkint, blocktime, (nliveinq or -A 옵션값)) IN-CHANEL은 alive 체크를 하지 않는다. |
| [-h VERSION] |
|
| [-t] | 여러 도메인에서 한 JTmax로 연결할 때 반드시 설정해야 한다. 여러 도메인이 한 JTmax로 연결하는 환경에서 옵션이 미설정될 때 복구 작업이 비정상적으로 동작한다. |
| [-H] | 설정하면 로그를 출력할 때 alive 체크 메시지는 출력하지 않는다. |
| [-x] | 연결되지 않는 원격 주소로의 연결을 시도할 때 발생하는 GATEWAY0046, GATEWAY0064, GATEWAY0098 메시지를 slog에 남기지 않는다. |
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 체크를 시도하는 주기 및 설정한 시간 이상으로 응답이 오지 않는다면 연결을 종료시킨다. 응답대기시간 : MIN(30, gwchkint, blocktime, (nliveinq or -A 옵션값)) 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에 남기지 않는다. |
다음은 Tuxedo 게이트웨이의 CLOPT 항목 옵션에 대한 설명이다.
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 옵션을 반드시 지정해야 한다. |