OSC Region 설정

본 장에서는 OSC Region을 구성하기 위해서 필요한 설정 및 준비 과정을 기술한다.

1. 개요

OSC Region는 사용자 업무 프로그램 처리를 하는 애플리케이션 서버와 추가적인 기능을 수행하는 보조 서버로 구성된다. 보조 서버는 TDQ 로그 타입 지원, OpenFrame Manager[OSC] 메뉴를 위한 기능을 수행한다.

애플리케이션 서버 준비는 다음과 같이 6단계로 구성된다.

  1. 애플리케이션 서버 바이너리 준비

    애플리케이션 서버 바이너리를 준비하고 서버 환경 파일을 설정한다.

  2. 애플리케이션 서버 DB 테이블 생성

    애플리케이션 서버에서 사용하는 데이터 테이블을 생성한다.

  3. 애플리케이션 서버 데이터셋 생성

    애플리케이션 서버에서 사용하는 데이터셋을 생성한다.

  4. 애플리케이션 서버 리소스 등록

    애플리케이션 서버에서 사용하는 기본 리소스 및 사용자 리소스를 등록한다.

  5. Tmax 환경 파일 설정

    Tmax 환경 파일에 애플리케이션 서버 및 서비스를 등록한다.

  6. 애플리케이션 서버 기동 및 종료를 위해 필요한 스크립트 파일을 준비한다.

2. 애플리케이션 서버 바이너리 준비

OSC 애플리케이션 서버를 사용하려면 먼저 서버 프로세스 바이너리를 준비해야 한다. oscbuild 툴을 사용해서 서버 바이너리를 생성한다. 서버 바이너리가 준비된 후에는 애플리케이션 서버 구성에 따라서 각 서버별로 필요한 환경설정 파일을 생성하고 설정한다. 환경 설정과 관련된 자세한 사항은 OSC 시스템 설정을 참고한다.

2.1. 소스 파일 준비

서버 바이너리를 생성할 때 사용자 소스 파일을 준비한다. OSC에서는 5개의 함수를 통해서 사용자가 작업을 지정이나 추가를 할 수 있다.
사용자 소스 파일에서 아래 함수들의 로직을 사용자가 임의로 작성하여 서버의 기동 및 종료 시에 필요한 추가 작업을 수행하거나, Non-XA 환경에서 트랜잭션의 시작과 SYNCPOINT, SYNCPOINT ROLLBACK에 대한 대응 기능을 추가할 수 있다.
추가 작업이 없는 경우에는 소스 파일을 준비할 필요가 없다. 컴파일할 때 oscbuild 툴의 -f 옵션을 이용하여 사용자 소스 파일을 지정한다.

OSC에서 각 함수별 호출 시점은 다음과 같다.

함수명 설명

otpsvrinit

Non-XA, XA 환경에 관계 없이 Region Server가 기동할 때 호출한다.

otpsvcinit

Non-XA 환경에서 트랜잭션을 시작할 때 호출한다.

otpsvrcommit

Non-XA 환경에서 사용자나 OSC에 의해 SYNCPOINT가 호출될 때 호출된다.

otpsvrrollback

Non-XA 환경에서 사용자나 OSC에 의해 SYNCPOINT ROLLBACK이 호출될 때 호출된다.

otpsvrdone

Non-XA, XA 환경에 관계 없이 Region Server가 종료할 때 호출한다.

다음은 시스템에서 제공하는 OSC 애플리케이션 서버의 샘플 소스 예이다.

int otpsvrinit(int argc, char *argv[])
{
    return 0;
}

int otpsvcinit()
{
    return 0;
}

int otpsvrcommit()
{
    return 0;
}

int otpsvrrollback()
{
    return 0;
}

int otpsvrdone()
{
    return 0;
}

2.2. 컴파일 및 배포

애플리케이션 서버 바이너리는 oscbuild 툴을 사용하여 생성할 수 있다. oscbuild 툴은 OSC 시스템이 설치된 환경에 따라서 컴파일 옵션 및 서버 바이너리 이름을 설정할 수 있는 기능을 제공하고 있다.

다음은 oscbuild를 사용하여 Linux 64Bit 환경에서 사용할 서버 바이너리를 생성하는 예이다. 서버 바이너리 이름을 지정하지 않을 경우 OSC00001로 생성된다.

$ oscbuild -o LINUX64

컴파일이 완료되면 OSC00001이라는 바이너리가 위 명령어를 실행하는 디렉터리에 생성되며, 생성된 바이너리는 원하는 이름으로 변경하여 사용할 수 있다. 서버 바이너리 이름은 8자 이하여야 한다. 바이너리 파일은 Tmax 설정 파일의 해당 노드에 대한 APPDIR 옵션에 설정된 디렉터리에 복사한다.

oscbuild 툴에 대한 자세한 사용법은 OpenFrame OSC "툴 참조 안내서"를 참고한다.

3. 애플리케이션 서버 DB 테이블 생성

애플리케이션 서버 운용에 필요한 정보를 저장하는 DB 테이블을 생성해야 한다. 테이블의 생성은 oscinit을 사용한다.

다음은 생성되는 테이블의 종류 및 특성에 대한 설명이다.

  • Region 관리 테이블

    OSC Region의 상태를 관리하기 위한 정보를 저장한다.

    테이블명 설명

    OFM_OSC_REGION_MASTER

    현재 기동 중인 Region에 대한 상태 정보를 저장한다. 노드명, 기동 상태, 서버 상태 등을 저장한다.

    OFM_OSC_REGION_LIST

    도메인 상에 기동 중인 Region들의 목록을 조회할 수 있다. Region 서버가 다운되는 경우 해당되는 Region 이름을 키로 가진 다른 시스템 테이블들의 레코드가 일괄 삭제된다.

  • System Definition 테이블

    OSC 시스템 운영에 필요한 리소스 정의를 저장한다.

    테이블명 설명

    OFM_OSC_SD_GROUP

    리소스 그룹에 대한 정의를 저장한다.

    OFM_OSC_SD_CONN

    CONNECTION 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_FILE

    FILE 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_PROG

    PROGRAM 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TYPE_TERM

    TYPETERM 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TERM

    TERMINAL 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TSMODEL

    TSMODEL 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_JNL_MODEL

    JOURNALMODEL 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_MAP_SET

    MAPSET 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_WEB_SVC

    WEBSERVICE 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_PIPIELINE

    PIPELINE 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_ENQ_MODEL

    ENQMODEL 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TCPIP_SVC

    TCPIPSERVICE 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_SESSION

    SESSIONS 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_PARTITIONSET

    PARTITIONSET 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_PROFILE

    PROFILE 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_LIBRARY

    LIBRARY 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_URIMAP

    URIMAP 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TRANS

    TRANSACTION 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TRAN_CLASS

    TRANCLASS 리소스에 대한 정의를 저장한다.

    OFM_OSC_SD_TDQ

    TDQUEUE 리소스에 대한 정의를 저장한다.

  • Runtime System Definition 테이블

    OSC 서버 기동 중 사용되는 리소스 정보를 저장한다.

    테이블명 설명

    OFM_OSC_CONN

    CONNECTION 리소스 정보를 저장한다.

    OFM_OSC_FILE

    FILE 리소스 정보를 저장한다.

    OFM_OSC_PROG

    PROGRAM 리소스 정보를 저장한다.

    OFM_OSC_TERM

    TERMINAL 리소스 정보를 저장한다.

    OFM_OSC_TSMODEL

    TSMODEL 리소스 정보를 저장한다.

    OFM_OSC_JNL_MODEL

    JOURNALMODEL 리소스 정보를 저장한다.

    OFM_OSC_MAP_SET

    MAPSET 리소스 정보를 저장한다.

    OFM_OSC_WEB_SVC

    WEBSERVICE 리소스 정보를 저장한다.

    OFM_OSC_PIPIELINE

    PIPELINE 리소스 정보를 저장한다.

    OFM_OSC_ENQ_MODEL

    ENQMODEL 리소스 정보를 저장한다.

    OFM_OSC_TCPIP_SVC

    TCPIPSERVICE 리소스 정보를 저장한다.

    OFM_OSC_SESSION

    SESSIONS 리소스 정보를 저장한다.

    OFM_OSC_PARTITIONSET

    PARTITIONSET 리소스 정보를 저장한다.

    OFM_OSC_PROFILE

    PROFILE 리소스 정보를 저장한다.

    OFM_OSC_LIBRARY

    LIBRARY 리소스 정보를 저장한다.

    OFM_OSC_URIMAP

    URIMAP 리소스 정보를 저장한다.

    OFM_OSC_TRANS

    TRANSACTION 리소스 정보를 저장한다.

    OFM_OSC_TRAN_CLASS

    TRANCLASS 리소스 정보를 저장한다.

    OFM_OSC_TDQ

    TDQUEUE 리소스 정보를 저장한다.

    OFM_OSC_NETNAME

    NETNAME 리소스 정보를 저장한다.

  • 시스템 테이블

    OSC 서버 운용에 필요한 설정 및 시스템 정보를 저장한다.

    테이블명 설명

    OFM_OSC_GETMAIN

    Region 프로세스간 공유되는 GETMAIN 영역의 주소값을 저장한다.

    OFM_OSC_TRAN2SVC

    트랜잭션명에 해당되는 서비스명을 저장한다.

    OFM_OSC_SVRINFO

    Region 프로세스의 상태정보를 저장한다.

    OFM_OSC_UPDATE_FILE

    FILE 리소스의 UPDATE 요청을 저장한다.

    OFM_OSC_UPDATE_TDQ

    TDQ 리소스의 UPDATE 요청을 저장한다.

    OFM_OSC_OPEN_FILE

    FILE 리소스의 OPEN 요청을 저장한다.

    OFM_OSC_OPEN_TDQ

    TDQ 리소스의 OPEN 요청을 저장한다.

    OFM_OSC_CONFIG

    OSC의 일부 환경설정을 저장한다.

    OFM_OSC_SACEE

    TERMINAL ID에 해당되는 SACEE 값을 저장한다.

    OFM_OSC_KEY2TRAN

    단축키에 해당되는 트랜잭션명을 저장한다.

    OFM_OSC_CSPG

    CSPG 커맨드 명령을 저장한다.

    OFM_OSC_TSQINFO

    TSQ의 상태정보를 저장한다.

    OFM_OSC_TSQDATA

    TSQ의 데이터를 저장한다.

  • 서비스 로그 테이블

    트랜잭션에 대한 통계 정보를 저장한다. 서비스 로그에 대한 자세한 내용은 OSC 운영을 참고한다.

    테이블명 설명

    OFM_OSC_OLOG

    트랜잭션에 대한 통계 정보를 저장한다.

  • 시스템 Time 테이블

    OSC 시스템 시간에 대한 정보를 저장한다.

    테이블명 설명

    OFM_OSC_TX_TIME

    OSC 시스템의 시간 및 날짜 정보를 저장한다.

  1. oscinit 툴에 대한 자세한 사용법은 OpenFrame OSC "툴 참조 안내서"를 참고한다.

  2. 각 리소스 정의에 대한 자세한 내용은 OpenFrame OSC "리소스 정의 안내서“를 참고한다.

4. 애플리케이션 서버 데이터셋 생성

OSC 애플리케이션 서버에 정의된 데이터셋은 서버가 기동되기 전에 생성되어야 한다.

서버 기동 전에 데이터셋이 생성되지 않은 경우 서버를 기동할 때 오류가 발생한다. 데이터셋을 생성하는 방법에는 Batch JOB을 수행하거나 IDCAMS 유틸리티를 이용하는 방법이 있다. 만약 OpenFrame Batch 제품이 설치되지 않은 경우는 idcams 툴을 사용하여 데이터셋을 생성할 수도 있다.

본 절에서는 IDCAMS 유틸리티 스크립트를 이용하는 예제와 그에 대응하는 idcams 툴 예제를 설명한다.

  1. IDCAMS 유틸리티의 자세한 내용은 OpenFrame Batch "유틸리티 참조 안내서"를 참고한다.

  2. idcams 툴의 자세한 내용은 OpenFrame Base "툴 참조 안내서"를 참고한다.

  3. Batch JOB을 수행하여 데이터셋을 생성하는 방법의 자세한 내용은 OpenFrame Batch "TJES 운영자 안내서”를 참고한다.

4.1. TDQ Intra-partition 데이터셋 생성

TDQ Intra-partition 데이터셋은 다음과 같이 설정되어야 한다.

  • TSAM KSDS 데이터셋으로 생성한다.

  • 데이터셋의 키 크기는 8로 고정이다.

  • 레코드 크기나 레코드 포맷은 실제 TDQ Intra-partition 큐를 사용할 때 작성하는 데이터 길이에 따라 사용자가 직접 정의한다.

다음은 OSC.TDQLIB.INTRA.OSC00001라는 TDQ Intra-partition 데이터셋을 생성하는 IDCAMS 스크립트이다. 첫 번째 라인은 같은 이름의 데이터셋이 존재할 경우 삭제하라는 의미이다.

DELETE OSC.TDQLIB.INTRA.OSC00001 CLUSTER
DEFINE CLUSTER (NAME(OSC.TDQLIB.INTRA.OSC00001) -
       KILOBYTES (128,128) -
       VOLUMES (100000) -
       INDEXED KEYS (8,0) -
       RECORDSIZE (128,32760) )

다음은 위의 예제 스트립트를 사용자가 지정한 UNIX 파일에 저장한 다음 셸에서 IDCAMS 유틸리티를 이용하여 TSAM 데이터셋을 생성하는 스크립트 예이다.

$ IDCAMS < IDCAMS_OSC.TDQLIB.INTRA.sample

다음은 위의 IDCAMS 유틸리티 예제를 idcams 툴로 수행하는 예이다.

$ idcams delete -t CL OSC.TDQLIB.INTRA.OSC00001
$ idcams define -t CL -n OSC.TDQLIB.INTRA.OSC00001 -o KS -k 8,0 -b 32768
  -l 128,32760 -s 1024,128,128 -v 100000

4.2. TSQ 데이터셋 생성

TSQ 데이터셋은 큐 정보(Queue information)를 저장하기 위한 데이터셋과 큐 데이터(Queue Data)를 저장하기 위한 데이터셋을 하나씩 생성한다.

큐 정보 저장 TSQ 데이터셋

큐 정보를 저장하기 위한 TSQ 데이터셋에 필요한 정보는 다음과 같다.

  • TSAM KSDS 데이터셋으로 생성한다.

  • 키 크기는 16Bytes이다.

  • 레코드는 64Byte 이상의 고정 길이로 지정한다. (가변 길이로 지정하지 않는다.)

다음은 OSC.TSQLIB.INFO.OSC00001라는 큐 정보를 저장하기 위한 데이터셋을 생성하는 IDCAMS 스크립트이다. 첫 번째 라인은 같은 이름의 데이터셋이 존재할 경우 삭제하라는 의미이다.

DELETE OSC.TSQLIB.INFO.OSC00001 CLUSTER
DEFINE CLUSTER (NAME(OSC.TSQLIB.INFO.OSC00001) -
       KILOBYTES (128,128) -
       VOLUMES (100000) -
       INDEXED KEYS (16,0) -
       RECORDSIZE (64,64) )

다음은 위의 예제 스크립트를 사용자가 지정한 UNIX 파일에 저장한 다음 셸에서 IDCAMS 유틸리티를 이용하여 TSAM 데이터셋을 생성하는 스크립트 예제이다.

$ IDCAMS < IDCAMS_OSC.TSQLIB.INFO.sample
큐 데이터 저장 TSQ 데이터셋

큐 데이터를 저장하기 위한 TSQ 데이터셋에 필요한 정보는 다음과 같다.

  • TSAM KSDS 데이터셋으로 생성한다.

  • 키 크기는 18Bytes이다.

  • 레코드 크기 및 포맷은 TSQ를 사용할 때 사용자가 직접 데이터 길이에 맞게 정의할 수 있다.

다음은 OSC.TSQLIB.DATA.OSC00001라는 큐 데이터를 저장하기 위한 데이터셋을 생성하는 IDCAMS 스크립트이다. 첫 번째 라인은 같은 이름의 데이터셋이 존재할 경우 삭제하라는 의미이다.

DELETE OSC.TSQLIB.DATA.OSC00001 CLUSTER
DEFINE CLUSTER (NAME(OSC.TSQLIB.DATA.OSC00001) -
       KILOBYTES (128,128) -
       VOLUMES (100000) -
       INDEXED KEYS (18,0) -
       RECORDSIZE (128,32760) )

다음은 위의 예제 스크립트를 사용자가 지정한 UNIX 파일에 저장한 다음 셸에서 IDCAMS 유틸리티를 이용하여 TSAM 데이터셋을 생성하는 스크립트 예이다.

$ IDCAMS < IDCAMS_OSC.TSQLIB.DATA.sample

다음은 위의 두 IDCAMS 유틸리티 예제를 idcams 툴로 수행하는 예이다. 먼저 큐 정보(Queue Information)를 저장하기 위한 데이터셋을 생성하고, 큐 데이터(Queue Data)를 저장하기 위한 데이터셋을 생성한다.

$ idcams delete -t CL OSC.TSQLIB.INFO.OSC00001
$ idcams define -t CL -n OSC.TSQLIB.INFO.OSC00001 -o KS -k 16,0 -b 32768
         -l 64,64 -s 1024,128,128 -v 100000

$ idcams delete -t CL OSC.TSQLIB.DATA.OSC00001
$ idcams define -t CL -n OSC.TSQLIB.DATA.OSC00001 -o KS -k 18,0 -b 32768
         -l 128,32760 -s 1024,128,128 -v 100000

4.3. FILE 데이터셋 생성

FILE 데이터셋은 TDQ나 TSQ 데이터셋과 달리 사용자가 File 리소스를 사용하는 경우에 선택적으로 생성한다. 사용자가 FILE 리소스를 사용하려면 시스템이 기동되기 전에 FILE 리소스 정의에 설정된 DSNAME 항목에 해당되는 데이터셋을 생성해야 한다. 리소스 설정의 OPENTIME(STARTUP)인 파일은 시스템 기동 전에 사용자에 의한 데이터셋이 생성되어 있지 않으면 시스템을 기동할 때 오류가 발생한다.

다음은 FILE 정의 예이다.

DEFINE FILE(OSCFILE)
       GROUP(TEST)
       DSNAME(OSC.FILE)
       RECORDFORMAT(V)
       ADD(YES)
       BROWSE(YES)
       DELETE(YES)
       READ(YES)
       UPDATE(YES)

다음은 위와 같이 정의된 OSCFILE을 위한 데이터셋을 생성하는 예이다. File 리소스의 DSNAME에 해당하는 이름을 가지는 데이터셋을 정의하는 IDCAMS 입력 스크립트를 작성한다. 레코드 크기는 최대 1024Byte의 가변 길이이고, 키는 레코드 시작부터 64Byte의 크기를 가지는 OSC.FILE을 생성하는 스크립트의 예이다.

DEFINE CLUSTER (NAME(OSC.FILE) -
       KILOBYTES (128,128) -
       VOLUMES (100000) -
       INDEXED KEYS (64,0) -
       RECORDSIZE (64,1024) ))

위의 예제 스크립트를 IDCAMS 유틸리티를 이용하여 TSAM 데이터셋을 생성한다.

$ IDCAMS < IDCAMS_OSC.FILE.sample

다음은 위의 IDCAMS 유틸리티 예제를 idcams 툴로 수행하는 예이다.

$ idcams define -t CL -n OSC.FILE -o KS -k 64,0 -b 32768
  -l 64,1024 -s 1024,128,128 -v 100000

File 리소스에 대한 자세한 내용은 OpenFrame OSC "리소스 정의 안내서“를 참고한다.

5. 애플리케이션 서버 리소스 등록

OSC에서는 반드시 등록되어야 하는 리소스 정의가 기술된 매크로 파일을 제공하고 있다. 그리고 OSC에서 제공하는 다양한 기능을 사용하는데 필요한 리소스 정의가 각각 담겨있는 샘플 매크로 파일을 제공하고 있다. 따라서 운영자는 리젼에 기본 매크로 파일을 등록하고, 서버에서 사용하고자 하는 기능에 따라서 샘플 매크로를 수정하여 등록하도록 한다.

5.1. 기본 리소스 등록

기본 매크로 파일은 애플리케이션 서버가 동작하는 데 필요한 프로그램과 트랜잭션에 대한 정의를 하고 있다. 기본 매크로 파일(osc.dat)은 ${OPENFRAME_HOME}/osc/resource 디렉터리에 존재하며, OSC 설치와 함께 제공된다.

기본 매크로 파일에 정의된 리소스들을 등록하기 위해서는 oscsdgen 툴을 이용해서 OSC SD 테이블에 등록한다. OSC SD 테이블에 등록하는 방법은 oscsdgen을 사용하여 OSC Region을 지정해 리소스를 등록할 수도 있다.

다음은 oscsdgen 툴을 사용하여 OSC에서 제공하는 기본 매크로 파일(osc.dat)을 OSC00001 Region에 등록하는 예이다.

$ oscsdgen -c -r OSC00001 osc.dat

5.2. 사용자 리소스 등록

샘플 매크로 파일에는 OSC에서 제공하는 각종 리소스들에 대한 정의를 하고 있다.

샘플 매크로 파일은 ${OPENFRAME_HOME}/osc/resource 디렉터리에 존재하며, OSC 설치와 함께 제공된다. 리소스들의 종류로는 CONNECTION, FILE, JOURNALMODEL, PROGRAM, TDQ, TERMINAL, TRANCLASS, TRANSACTION, TSMODEL, TYPETERM 등 총 10가지가 있다.

oscsdgen으로 샘플 매크로 파일을 OSC SD 테이블에 등록한다. 또한 OpenFrame Manager[OSC] > [System Definition] 메뉴를 사용하여 리소스 정의를 추가, 변경 및 삭제할 수 있다.

  1. OpenFrame Manager[OSC] > [System Definition] 메뉴에 대한 자세한 내용은 OpenFrame Manager "사용자 안내서"를 참고한다.

  2. OSC에서 제공하는 리소스들에 대한 자세한 내용은 OpenFrame OSC “리소스 정의 안내서“를 참고한다.

6. Tmax 환경 파일 설정

애플리케이션 서버, 애플리케이션 보조 서버와 해당 서버에서 사용하는 서비스를 Tmax 환경설정 파일에 추가해야 한다.

6.1. 애플리케이션 서버 및 서비스 등록

OSC 애플리케이션 서버는 비 대화형과 대화형 두 종류의 서버가 있다. 하나의 애플리케이션 서버를 추가하기 위해서는 두 종류 서버를 함께 등록해야 한다. 애플리케이션 서버는 Tmax 환경설정 파일의 [SERVER] 절에 등록한다.

서버 등록 정보는 다음과 같다. 서버명 외의 옵션은 Tmax 서버 등록 방식과 동일하다.

서버 서버명

비대화형 애플리케이션 서버

  • Tranclass 서버 : Region 이름_Tranclass 이름 (예: OSC00001_TCL0)

  • PLT 서버 : Region 이름 (예: OSC00001)

대화형 애플리케이션 서버

  • 대화형 서버 : Region 이름 (예: OSC00001C)

서비스 등록 정보는 다음과 같다. 서비스명은 서버명에 접미어를 추가하여 등록한다. Tranclass 서버의 경우 서버명과 동일한 이름의 서비스를 등록한다.

서비스 접미어 수행되는 서버

일반 트랜잭션을 처리하는 서비스

없음

Tranclass 서버

PLT 기능을 처리하는 서비스

P

PLT 서버

대화형 트랜잭션을 처리하는 서비스

C

대화형 서버

DPL과 Function Shipping을 처리하는 서비스

M

대화형 서버

서비스명은 대화형 서버명이 아니라 비 대화형 애플리케이션 서버명에 접미어를 추가하는 것임을 주의하도록 한다.

운영자는 각 서비스의 역할에 따라서 애플리케이션 서버의 설정을 변경하여, 효율적으로 트랜잭션 처리를 할 수 있도록 한다.

다음은 OSC00001 Region의 비 대화형 서버(OSC00001_TCL0, OSC00001_TCL1, OSC00001)와 대화형 서버(OSC00001C)를 등록하고, 해당 서버에 서비스들을 설정하는 예이다.

*SERVER
OSC00001_TCL0   SVGNAME = svgbiz,
                TARGET = OSC00001,
                MIN = 1,
                MAX = 1,
                SCHEDULE = FA,
                CLOPT = "-o $(SVR).out -e $(SVR).err"

OSC00001_TCL1   SVGNAME = svgbiz,
                TARGET = OSC00001,
                MIN = 1,
                MAX = 1,
                SCHEDULE = FA,
                CLOPT = "-o $(SVR).out -e $(SVR).err"

OSC00001        SVGNAME = svgbiz,
                MIN = 1,
                MAX = 1,
                SCHEDULE = FA,
                CLOPT = "-o $(SVR).out -e $(SVR).err -n"

OSC00001C       SVGNAME = svgbiz,
                TARGET = OSC00001,
                CONV = O,
                MAX = 1,
                SCHEDULE = FA,
                CLOPT = "-o $(SVR).out -e $(SVR).err"
*SERVICE
OSC00001_TCL0         SVRNAME = OSC00001_TCL0
OSC00001_TCL1         SVRNAME = OSC00001_TCL1
OSC00001P             SVRNAME = OSC00001
OSC00001              SVRNAME = OSC00001
OSC00001M             SVRNAME = OSC00001C
OSC00001C             SVRNAME = OSC00001C

6.2. 애플리케이션 보조 서버 및 서비스 등록

애플리케이션 보조 서버는 애플리케이션 서버에 추가적인 기능 제공을 위해서 설정이 필요한 서버들이다.

기능에 따라서 TDQ 로그 기능을 사용할 경우 필요한 OSC TDQ Log 서버, OpenFrame Manager[OSC] 메뉴를 사용하기 위해서 필요한 서버들을 추가적으로 관리해야 한다.

다음은 서버명을 설정하는 방법에 대한 설명이다.

서버 서버명

OSC TDQ Log 서버

'Region 이름+TL’로 설정한다. (예: OSC0001TL)

OpenFrame Manager/OSC 서버

'Region 이름+OMC’로 설정한다. (예: OSC00001OMC)

다음은 애플리케이션 보조 서버의 서버를 등록하는 예이다.

*SERVER
OSC0001TL       SVGNAME = svgbiz,
                TARGET = osctlsvr,
                MAX = 1, SVRTYPE = UCS,
                CLOPT = "-o $(SVR).out -e $(SVR).err"

OSC00001OMC     SVGNAME = svgbiz,
                TARGET = oscossvr,
                MIN = 1,
                MAX = 5,
                SCHEDULE = RR,
                CLOPT = "-o $(SVR).out -e $(SVR).err -x OSCOSSVRSVC1:OSC00001_OMC1,
OSCOSSVRSVC2:OSC00001_OMC2,OSCOSSVRMON:OSC00001_MON,OSCOSSVR_ST:OSC00001_ST"

각 서버들의 실행 바이너리명은 서버 등록 정보에 TARGET 옵션을 사용하여 지정하고 각 보조 서버들 또한 개별적으로 서비스를 등록해야 한다.

서버 서비스 지정

OSC TDQ Log 서버

Region 이름에 "_TL"을 추가한 서비스를 등록한다.

OpenFrame Manager/OSC 서버

Region 이름에 "_OMC1", "_OMC2", "_MON", "_ST"를 추가한 3개의 서비스를 등록한다. OMC 서버의 경우 대표 서비스들이 요청을 처리하는 구조로 설계되어 있기 때문에 대표 서비스들을 서버 등록 정보에 CLOPT 옵션을 사용하여 지정한다.

서비스 "_OMC1"과 "_OMC2"는 각각 멀티노드 환경에서 특정 노드로 서비스를 요청해야 하는 경우와 노드와 상관없이 서비스를 요청하는 경우로 나뉜다. 서비스 "_OMC1"의 경우 특정 노드로 요청해야 하는 서비스들을 모아 놓은 것으로서, 멀티노드 환경에서는 ROUTING 절을 추가하여 FB_NODENAME 필드에 따라 특정 노드로 서비스를 요청하도록 할 수 있다.

다음은 애플리케이션 보조 서버의 서비스를 등록하는 예이다.

*SERVICE
OSC00001_TL          SVRNAME = OSC00001TL
OSC00001_OMC1        SVRNAME = OSC00001OMC
OSC00001_OMC2        SVRNAME = OSC00001OMC
OSC00001_MON         SVRNAME = OSC00001OMC
OSC00001_ST          SVRNAME = OSC00001OMC