Middleware

[Tuxedo] tuxedo 명령어

2022. 8. 23. 13:59

턱시도 명령어에 대한 자료.

 

클릭하면 원문으로 이동하게 됩니다.

 

이후 포스팅 부터는 각 명령어에 대해서 조금 더 자세하게 다룰 것 입니다!

 

열공 :)

 

 

 

Oracle Tuxedo Commands 

Links the TM_MQI, TM_MQO, and TMQUEUE_MQM servers
Construct a Tuxedo client application developed using the Tuxedo .NET Workstation Client wrapper.
Each command respectively links the TM_MQI, TM_MQO, and TMQUEUE_MQM servers
Parses a DMCONFIG file and loads a binary BDMCONFIG configuration file
Unloads a BDMCONFIG file (a binary Domains configuration file)
Parses a UBBCONFIG file (a text-format configuration file) and loads a TUXCONFIG file (a binary configuration file)
TMS_rac_refresh sends the Transaction Manager Servers (TMS), which are specified by groupname(s) or group ID(s) and listed in the groupname parameter, a command to re-execute the xa_recover() operation.
Unloads a TUXCONFIG file (a binary configuration file)
Encrypts the LDAP bind password for the XAUTHSVR/LAUTHSVR/GAUTHSVR configuration file

 

 

 

 

 

 

 

'Middleware > Tuxedo' 카테고리의 다른 글

[Tuxedo] tmshutdown 명령어  (0) 2022.08.23
[Tuxedo] tmboot 명령어  (0) 2022.08.23
[Tuxedo] TOUPPER 서비스를 이용한 테스트  (0) 2022.08.23
[Tuxedo] UBBCONFIG 설정 관련  (0) 2022.08.23
[Tuxedo] Tuxedo 12c console mode 설치  (0) 2022.08.22

tuxedo sample test
 


1. 환경변수 적용 여부 확인
 [tuxedo@eai ~]$ vi .bash_profile
 # .bash_profile
 
# Get the aliases and functions
 if [ -f ~/.bashrc ]; then
         . ~/.bashrc
 fi
 
# User specific environment and startup programs
 
PATH=$PATH:$HOME/bin
 
export LANG=C
 export PATH
 . /opt/tuxedo/tuxedo10gR3/tux.env
 
[tuxedo@eai ~]$ env | grep TUX
 TUXDIR=/opt/tuxedo/tuxedo10gR3
 [tuxedo@eai ~]$export TUXCONFIG=/opt/tuxedo/tuxedo10gR3/samples/atmi/simpapp/tuxconfig

2. Configuration file edit & compile
 [tuxedo@eai simpapp]$ cd /opt/tuxedo/tuxedo10gR3/samples/atmi/simpapp
 [tuxedo@eai simpapp]$vi ubbsimple
 [tuxedo@eai simpapp]$ tmloadcf -y ubbsimple
 [tuxedo@eai simpapp]$
 

3. 서버 및 클라이언트 프로그램 compile
 [tuxedo@eai simpapp]$ buildclient -o simpcl -f simpcl.c
 [tuxedo@eai simpapp]$ buildserver -o simpserv -f simpserv.c -s TOUPPER
 [tuxedo@eai simpapp]$
 
 
===========================================
# ipcs ...

ipcs|grep $LOGNAME|awk '{print "ipcrm -"$1,$2}'>a.sh;sh a.sh; rm a.sh

===========================================
4. tuxedo 실행 및 프로세스 확인
 [tuxedo@eai simpapp]$ tmboot -y
 Booting all admin and server processes in /opt/tuxedo/tuxedo10gR3/samples/atmi/simpapp/tuxconfig
 INFO: Oracle Tuxedo, Version 10.3.0.0, 32-bit, Patch Level (none)
 
Booting admin processes ...
 
exec BBL -A :
         process id=10968 ... Started.
 
Booting server processes ...
 
exec simpserv -A :
         process id=10971 ... Started.
 
 
 
5. 테스트 샘플 구동 및 확인
 
[tuxedo@eai simpapp]$ ./simpcl "hello tux"
 Returned string is: HELLO TUX
 [tuxedo@eai simpapp]$
 

6. tmadmin
 [tuxedo@eai simpapp]$ tmadmin
 tmadmin - Copyright (c) 2007-2008 Oracle.
 Portions * Copyright 1986-1997 RSA Data Security, Inc.
 All Rights Reserved.
 Distributed under license by Oracle.
 Tuxedo is a registered trademark.
 
> h
 > psr
 Prog Name      Queue Name  Grp Name      ID RqDone Load Done Current Service
 ---------      ----------  --------      -- ------ --------- ---------------
 BBL            234567      simple         0      0         0 (  IDLE )
 simpserv       00001.00001 GROUP1         1      1        50 (  IDLE )
 > psc
 Service Name Routine Name Prog Name  Grp Name  ID    Machine  # Done Status
 ------------ ------------ ---------  --------  --    -------  ------ ------
 TOUPPER      TOUPPER      simpserv   GROUP1     1     simple       1 AVAIL
 

6. 1 APP1 machine의 active client 수
 $ echo pclt -m APP1 | tmadmin -r 2>/dev/null | grep "/W" | wc -l
 
6.2 Tuxedo Server Queue Information
 $ echo pq | tmadmin -r 2>/dev/null | awk '{ if( $5 > 0 ) print $0 }'
 
6.3 Tuxedo Service Information
 $ echo psr | tmadmin -r  2>/dev/null | grep -v IDLE | awk '{ if( $8 !="-") print $0 }'
 

 

좋은 글이 있어서 공유합니다.

 

감사합니다.

 

https://m.blog.naver.com/onlywin7788/140155149503

 

TUXEDO 기본 TOUPPER 서비스를 이용한 구동 실습 및 확인

tuxedo sample test 1. 환경변수 적용 여부 확인 [tuxedo@eai ~]$ vi .bash_profile # .bash_profile # Ge...

blog.naver.com

 

* RESOURCE


IPCKEY
100330  (범위 : 32,769 ~ 16,777,214)
→ BBL을 할당하기 위한 값으로 전체 시스템에서 중복 되지 않도록 설정.
  Single-Process (Bulletin Board  Naming 사용),
  Multi-Process (DBBL의 메세지 큐 Naming 사용)
UID
102
→ 응용프로그램에 대한 접근을 관리키 위한 값.( System/T 관리자 사용자 ID값)
GID
101
→ 응용프로그램에 대한 접근을 관리키 위한 값.  (System/T 관리자 그룹 ID값)
PERM
0600  (기본값 : 0600)
→ Tuxedo IPC자원에 대한 접근을 관리키 위한 값.

※(UID, GID, PERM)에서 설정된 모든 값은 모든 사이트에서 동일하게 적용.
    (MACHINE) 섹션에서 재설정 가능.

MAXACCESSERS
1000  (기본값 : 50)
→ 전체시스템 중에서 가장 많은 프로세스가 /T에 접속되는 곳의 접속 프로세스수이다.
  MAXSERVERS의 값보다 커야한다. ( MAXACCESSERS = 클라이언트수 + 응용서버수 * 1.1)
MAXSERVERS
500 (기본값 : 50)
→ 시스템 전체에서 사용되는 서버 프로세스의 합계
MAXSERVICES
10000  (기본값 : 100,  범위 : 0 ~ 32,768)
→ 시스템 전체에서 사용되는 서비스의 합계

※(MAXACCESSERS, MAXSERVERS, MAXSERVICES)의 IPC자원은 빠른처리를 위해
    할당 하므로 적당한 크기로 작성.

MAXCONV
10 (기본값 : 10)
→ 머신당 동시에 실행 가능한 대화(Conversation) 서버의 갯수.
MAXGTT
300 
→ 하나의 머신에서 동시에 허용되는 GTRID의최대값.
MASTER
SITEA01, SITEA02
→ 시스템의 부팅과 관리를 담당하는 머신을 설정, 1개또는 2개를 지정 할 수 있으며,
  이름은 논리적인 머신 구분자(LMID)로 지정한다.
  (LMID가 2개 이상 경우는 마스터 머신의 이동을 허용.
SCANUNIT
10
→ 검사를 위한 시간 단위로 5의배수로 설정한다.
SANITYSCAN
12
→ 서버의 온전성을 정기적으로 검사하기 위한 시간단위
  (SCAN * SANITYSCAN = 120 이며 300이하)
BBLQUERY
300   
→ DBBL이나 BBL 이 정상적인지를 검사하는 시간 간격을 설정한다.
  (SCANUNIT * BBLQUERY = 3000 설정)
BLOCKTIME
70
→ Blocking 메세지에 대한 Timeout값. (SCANUNIT * BLOCKTIME = 700)
DBBLWAIT
30
→ BBL의 응답을 얼마나 기다릴 것인가를 설정. (SCANUNIT * DBBLWAIT = 300)

※BBLQUERY, DBBLWAIT가 유효하려면 OPTION 변수에 LAN 설정이 되어 있어야 한다.

OPTION
LAN, MIGRATE
→ 응용프로그램이 네트워크 환경에서 실행 될 것인지, Migrate 할 지를 설정
MODEL
MP
→ Tuxedo가 단일 머신 또는 다중 머신에서 운영될 것 인지를 설정.
  (SHM : 전역공유메모리 사용,  MP:  다중프로세스 사용)
LDBAL
Y
→ 시스템의 Load Balancing 적용 여부를 설정한다.  ( N : Round-robin 방식이 적용)
SYSTEM_ACCESS
FASTPATH
→ 응용 프로그램으 클라인언트/서버로 부터 고유메모리에 있는 시스템 테이블에 대한
  접근을 제한하는 변수.
MAXBUFTYPE
16  (기본값 : 16)
→ 응용 프로그램에서 사용하는 버퍼유형의 갯수
MAXBUFSTYPE
32 (기본값 : 32)
→ 응용 프로그램에서 사용하는 하위버퍼 유형의 갯수
NOTIFY
DIPIN
→ 클라이언트/서버에서 자발적인 메시지 수신 방법을 설정한 것으로 tpchkunsol()함수
  호출이나 ATMI 호출시 메세지 수신.

 


* MACHINES


DEFAULT
ROOTDIR="/kor1/tuxedo"
→ Tuxedo가 설치된 디렉토리 (ROOTDIR 환경변수)
TUXDIR="/kor1/tuxedo"
→ Tuxedo가 설치된 디렉토리
ENVFILE="/kor2/tuxedo/env/ENVFILE"
→ Tuxedo 환경 File의 명칭 및 디렉토리.
TLOGDEVICE="/kor2/tuxedo/env/TLOG"
→ Tuxedo 로그 File의 명칭 및 디랙토리 (향후 Raw Disk 사용시 수정하여야 함)
TLOGNAME=TLOG
→ Tuxedo 로그 File의 명칭
TUXCONFIG="/kor2/tuxedo/env/tuxconfig"
→ Tuxedo Config File의 명칭 및 디렉토리
TYPE="RS6000"
→ 데이터의 표현방식이 다른 머신을 구분하기 위한 구분자 (30 Byte)
ULOGPFX="/kor2/tuxedo/env/log/ULOG"
→ Tuxedo User 로그 File의 접두어
TLOGSIZE=300
→ Tuxedo 로그의 사이즈.
CMPLIMIT="1024,MAXLONG"
→ 데이터 압축시의 초기 사이즈.
NETLOAD=1000000
→ 현재 머신에서 다른 머신으로 서비스 요청을 보내기 위한 연산을 수행할때
  부가되는 가 부하치.
SPINCOUNT=1000
korea01
LMID=SITEA01
APPDIR="/korea01/tuxedo/bin:/korea02/tuxedo/bin"
MAXWSCLIENTS=300
→ 본사(서울) 1번 서버
korea02
LMID=SITEA02
APPDIR="/korea02/tuxedo/bin:/korea01/tuxedo/bin"
MAXWSCLIENTS=300
→ 본사(서울) 2번 서버

 


* GROUPS


GRP_A01 GRP_NOXAA01
LMID=SITEA01, SITEA02  GRPNO=11  TMSNAME=TMS_ORACLE7  TMSCOUNT=3  
OPENINFO="Oracle_Xa:Oracle_Xa+SqlNet=tns_kor01+Acc=P/tuxedo/passwd+SesTm=300+
         LogDir=/kor2/tuxedo/env/log"
LMID=SITEA01,SITEA02  GRPNO=18
→ 본사 1번 그룹
GRP_A02 GRP_NOXAA02
LMID=SITEA02, SITEA01  GRPNO=12  TMSNAME=TMS_ORACLE7  TMSCOUNT=3  
OPENINFO="Oracle_Xa:Oracle_Xa+SqlNet=tns_kor02+Acc=P/tuxedo/passwd+SesTm=300+
         LogDir=/kor2/tuxedo/env/log"
LMID=SITEA02,SITEA01  GRPNO=19
→ 본사 2번 그룹
WSGRPA01 WSGRPA02
LMID=SITE01, SITEA2  GRPNO=110
LMID=SITE02, SITEA1  GRPNO=120
→ 본사 WS그룹
WSGRPB01 WSGRPB02
LMID=SITEB01, SITEB02  GRPNO=210
LMID=SITEB02, SITEB01  GRPNO=220
→ 지사 WS그룹


* SERVERS


DEFAULT
RESTART=Y
→ 서버가 중지되면 자동으로 재시동할지 여부를 설정한 값
MAXGEN=3
→ 서버가 재시동 될 수 있는 횟수
MAX=4
→ 동일 서버가 동시에 실행 될 수 있는 최대값
REPLYQ=Y
→ MSSQ 서버가 다른서비스를 호출하고, 그응답을 받을때 "Y"로 설정
※ 참고사항
▷ CLOPT  :  명령어 라인상의 옵션을 넘기기 위한 매개변수
▷ OPTION 
    -A  : 서버에 포함된 모든 서비스를 실행
    --  :  옵션간의 구분을 위한 기호
    -n  :  WSL이 상주하는 네트워크 Address
    -w  :  WSL이 기동시킬 WorkStation Handler의 명칭
    -m  :  Minimum WSH 수                         
    -M  :  Maximum WSH 수
    -x  :  하나의 WSH에 접속 가능한 클라이언트수   
    -T  :  WSL 타임아웃 시간
    -I  :  클라이언트 타임아웃 시간                 
    -r  :  Report를 작성한다
    -o  :  표준출력 메세지를 file.out 형태로 저장 
WSL
SRVGRP=WSGRPA01  SRVID=110  CLOPT="-A -- -n 0x0002aa01010000000b -w WSH
                                        -m 20 -M 30 -x 10 -T 300 -I 60"
SRVGRP=WSGRPA02  SRVID=120  CLOPT="-A -- -n 0x0002aa02010000000b -w WSH
                                        -m 20 -M 30 -x 10 -T 300 -I 60"
→ 본사 1,2 번  WSL
SRVGRP=WSGRPB01  SRVID=210  CLOPT="-A -- -n 0x0002bb01010000000d -w WSH
                                        -m 20 -M 30 -x 10 -T 300 -I 60"
SRVGRP=WSGRPB02  SRVID=220  CLOPT="-A -- -n 0x0002bb02010000000d -w WSH
                                        -m 20 -M 30 -x 10 -T 300 -I 60"
→ 지사 1,2 번 WSL
TMUSREVT
SRVGRP=GRP_NONXAA01  SRVID_ID=1100  CLOPT="-A "  MIN=1  MAX=1
→ TP_SUB_SCRIBE를 위한 Tuxedo 제공 이벤트 서버

※ 참고사항
▷ SEQUENCE
  부팅이 되는 순서를 결정하는 매개변수 1 ~ 10000의 값을 가짐
  - 작은 값을 가진것이 먼저부팅
  - 이 값을 가진 서버가 가지지 않은 서버보다 먼저 부팅
▷ MIN  : 하나의 서버가 여러개의 복사본이 부팅이 될 경우, 부팅할 최소값
▷ MAX  : 부팅할 최대 서버의 갯수 (기본값 : MIN값)
▷ ENVFILE
    - 하나의 서버에 대한 환경 변수를 설정한 File명
    - *MACHINES 섹션의 값과 *SERVER 섹션의 값에 영향을 준다
    - *SERVERS 섹션에서 설정한 환경변수 설정 File의 값으로 재설정
▷ RQADDR
    - MSSQ가 구성이 되도록 하는 매개변수, Alphanumeric 값
    - 같은 서비스를 제공하는 서버(MSSQ)의 경우는 같은 값을 가진다
▷ PQPERM : Request 큐에 대한 접근 허가를 부여 (0666)
▷ REPLYQ
   MSSQ 서버가 다른 서비스를 호출하고, 그응답을 받아야 하면 "Y"로 설정
   (기본값 : REPLYQ=N)
▷ PPERM   : REPLYQ=Y 인 경우, REPLYQ에 대한 접근 허가를 부여 한다
▷ RESTART  : 응용 프로그램이 시작되면서 다운된 서버를 재시작 하도록 하는
   매개변수(기본값 : "N")
▷ RCMD    : 서버를 재시작 할 때에 같이 시작되어야 할 실행 FIle명
▷ MAXGEN : 서버가 재시작할 횟수 (GRACE 시간 간격 동안)  (기본값 : 1 최대 256)
▷ GRACE   : MAXGEN에 의해 사용되는 시간간격 (0 : 시간제한없음,  0 ~ 2,
             147,483,647)
▷ CONV    : 이 값이 "Y" 이면 대화형 서버임을 나타냄 (기본값 : "N")
▷ SYSTEM_ACCESS
   서버가 공유메모리상의 System/T 내부 테이블에 대한 접근 허가를 결정
   - PROTECTED : 서버는 내부 테이블에 접근할 수 없음
   - FASTPATH  : 서버는 항상 내부 테이블에 연결 되어 있음.
   (※ *RESOURCE 섹션에 NO_OVERRIDE가 지정 된 경우, 이 값은 무시됨)
SVR_001
SRVGRP=GRP_A01  SRVID_ID=1120  CLOPT="-A -r -o  SVR_001.out"  
RQADDR="SVR_001_Q_001"
→ 서버(1)
SVR_002
SRVGRP=GRP_A01  SRVID_ID=2120  CLOPT="-A -r -o  SVR_002.out"  
RQADDR="SVR_002_Q_001"
→ 서버(2)


* SERVICES


DEFAULT
LOAD=50     → Load Balancing 에 사용되는 값
PRIO=30     → 서버큐에서 꺼내지는 순서를 결정 하는 값
AUTOTRAN=Y  → 클라이언트에서 tpbegin(), tpcommit()을 사용하지 않아도 서비스
              호출시 자동 트랜잭션을 관리
TRANTIME=30 → 트랜잭션 타임아웃 시간
PRIO=30  ROUTING=server_id → 사건수사 관련 서비스명 (예제)

 


* ROUTING

 

Server_id
FIELD=server_id ,  BUFTYPE="FML32", 
RANGES="'KOREA01':GRP_A01,'KOREA02':GRP_A02"
→ Routing 서버 등록

※ 참고사항
▷ FIELD=server_id : 라우팅 할 필드의 명칭
▷ BUFTYPE="FML32" : 라우팅 버퍼의 타입
▷ RANGES=xxx      : 라우팅 필드의 범위 (값에 따라 라우팅 될 서버그룹을 정의)

 

 

깔끔하게 정리된 글이 있어서 공유 합니다.

 

감사합니다.

 

URL 첨부

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=onlywin7788&logNo=140155149585 

 

UBBCONFIG 설정 관련

* RESOURCE IPCKEY 100330 (범위 : 32,769 ~ 16,777,214) → BBL을 할당하기 위한 값으로...

blog.naver.com

 

 

설치 환경 - Oracle Linux 7.9, OpenJDK 1.8.0_342

 

사용자 : tuxedo

 

설치경로 : /sw/tp/

 

tuxedo 설치파일 12c 12.2.2.2.0

https://www.oracle.com/middleware/technologies/tuxedo-downloads.html

 

Oracle Tuxedo Downloads

We’re sorry. We could not find a match for your search. We suggest you try the following to help find what you’re looking for: Check the spelling of your keyword search. Use synonyms for the keyword you typed, for example, try "application" instead of

www.oracle.com

운영체제에 맞게 다운로드

 

나는 위에서 zip 파일을 다운로드 받고 sftp를 통해서 리눅스 서버에 전송했다.

 

궁금하면 이 방법으로 해보자 

 

https://nomajorkorean.tistory.com/3?category=1090780 

 

[LINUX] SFTP (Secure File Transfer Protocol) 의 명령어를 활용한 파일 전송

업무를 하다보면 Window OS에서 Linux OS로 또는 반대방향으로 파일이 빈번히 오고 갈 수 있다. (리눅스는 오픈소스 소프트웨어이기 때문에 가능) 원격서버로 파일 전송을 하는 방법 중 한가지인 SFTP

nomajorkorean.tistory.com

 

그럼 이제  unzip을 해보자.

Disk1 디렉토리가 생겼다.

 

그럼 Disk1/install/ 디렉토리로 진입하고,  runInstaller.sh 라는 쉘스크립트를 실행시켜주자.

 

이 과정은 JAVA_HOME을 환경변수 setting 해주는 과정을 생략하였습니다. (이 과정은 필수 입니다)

 

(만약 셋팅 안되었다면 JAVA_HOME is not set 이라는 에러가 나옴)

 

저는 자바 버전8을 서버에 설치하였고 그 설치경로(설치된 디렉토리)를 .bash_profile에 환경변수 설정하였습니다!

 


이제 본론으로 들어가서 console 모드로 설치를 진행해보겠습니다.

 

 

 

 

 

./runInstaller.sh -console

 

 

 

엔터!

 

 

센트럴 인벤토리로 선택하였습니다. 

 

(프라이빗 인벤토리와 아직 차이점은 잘 모르겠습니다...)

 

 

경고를 가볍게 무시하고 Yes

 

Full Install 선택 

 

start installation

 

 

 

설치중

 

 

 

Summary

설치가 완료되었다. 이제 명령어를 실행해봐야겠지? 

 

명령어는 bin/ 디렉토리에 있다.

 

설치가 완료된 디렉토리로 가보면 tux.env 환경설정 파일이 생겨져있다.

 

이것을 실행시킨다.

 

. ./tux.env

그럼 UBBCONFIG 파일로 이동해보자.

 

UBBCONFIG가 뭐야?

아래글 참고

https://nomajorkorean.tistory.com/11?category=1090829 

 

[TUXEDO] UBBCONFIG 환경 파일

What Is a UBBCONFIG File ? The UBBCONFIG file is a text version of the configuration file that defines a BEA Tuxedo application. You can create and edit a UBBCONFIG file with any text editor. Th..

nomajorkorean.tistory.com

 

 

이동해보자...

samples/atmi/simpapp

도착하면 UBBCONFIG파일인 ubbsimple을 vi편집기로 열어 

 

8개의 섹션을 확인한다. 

 

 

8개 섹션? 그게 뭐야?

아래글 참고

 

https://nomajorkorean.tistory.com/9?category=1090829 

 

[TUXEDO] UBBCONFIG 환경파일 설정 (업데이트 중 )

UBBCONFIG 파일이라고 하는 TUXEDO 구성 파일은 가장 중요한 TUXEDO 환경 또는 어플리케이션에 대한 구성 파일 입니다. UBBCONFIG 파일은 TUXEDO 어플리케이션을 구조화 할 수 있는 다양한 섹션들을 가지고

nomajorkorean.tistory.com

 

 

 

ubbsimple

중요한 것들 표시...

 

:!pwd 로 현재 위치 확인하여 복붙.

 

APPDIR은 서버 어플리케이션이 존재하는 디렉토리를 나타낸다.

TUXCONFIG는 현 프로세스에서의 바이너리로 된 구성 파일을 나타냄. tuxconfig 디렉토리까지 설정

TUXDIR은Tuxedo 서버 모듈이 존재하는 디렉토리를 나타냄 tuxedo가 설치된 디렉토리까지 설정

 

 

:wq로 나와서 

 

TUXCONFIG를 환경변수 설정하자.

 

export TUXCONFIG=/sw/tp/tuxedo12.2.2.0.0/samples/atmi/simpapp/tuxconfig

완료

오라클 콘솔 모드 설치와 패치 진행 후

패치 적용 확인을 하는 단계

 

오라클 홈 경로/Opatch/opatch lsinventory

or

 

./opatch lsinventory

 

lsinventory로 패치 적용 확인 

'Middleware > Tuxedo' 카테고리의 다른 글

[Tuxedo] UBBCONFIG 설정 관련  (0) 2022.08.23
[Tuxedo] Tuxedo 12c console mode 설치  (0) 2022.08.22
[Tuxedo] MACHINES 섹션  (0) 2022.08.22
[Tuxedo] RESOURCES section  (0) 2022.08.18
[Tuxedo] TUXEDO 12c install slient mode / 설치  (0) 2022.08.12

[Tuxedo] MACHINES 섹션

2022. 8. 22. 09:47

uname LMID 

- uname은 *MACHINES 섹션의 맨 앞에 존재

- 물리적인 프로세스의 이름을 나타냄("uname -n" 명령에서 반환되는 값)

- "hostname"의 반환값과 "uname -n" 명령의 반환값은 동일하여야 함.

- LMID의 값은 물리적인 프로세서에 대한 논리적인 머신 이름. Alpha-numeric 값이며, *MACHINES 섹션 내에서 유일한 값이어야 한다.

 

TUXCONFIG 

- 현 프로세스에서의 바이너리로 된 구성 파일을 나타냄

- 64 byte 까지 가능.

 

TUXDIR, APPDIR 

- TUXDIR : Tuxedo 서버 모듈이 존재하는 디렉토리를 나타냄.

- APPDIR : 서버 어플리케이션이 존재하는 디렉토리를 나타냄.

 

UID, GID, PERM 

- 어플리케이션에 대한 접근을 관리하기 위한 값들.

- UID : Tuxedo System/T 관리자의 User-ID.

- GID : Tuxedi Ssystem/T 관리를 위한 Group-ID.

- PERM : Tuxedo IPC 자원에 대한 접근을 관리한다 (0111~0777). 기본 디톨트값은 0600이다. 

 

 

MAXACCESSERS

IPC 자원은 빠른 처리를 위해 할당이 되므로 적당한 크기로 설정한다. 과다하게 설정 시, 메모리 소모가 너무 많다. 너무 적게 설정해도 한계에 걸린다.

MAXACCESSERS는 MACHINES 단위로 Tuxedo/T와 접속 가능한 프로세서의 수 이다.

MAXACCESSERS = Machine 당 AP server의 수 + Machine 당 TMS의 수 + Machine 당 WSL의 수 + Machine 당 WSH의 수 + Machine 당 MAXCLIENTS의 수 + Native Client의 수 + ( Machine 당 tmadmin Process의 수 -1) 

1개의 프로세스에 대해 1개의 세마포어가 사용된다.

0 < MAXACCESSERS < 32,768  범위의 값으로 설정한다. (디폴트 50)

 

 

MAXWSCLIENT 

- Machine에 접속할 수 있는 최대 /WS 클라이언트의 수 

- 정의된 값보다 많은 클라이언트가 접속을 시도할 경우 오류가 발생하게 된다.

- '0 <= MAXWSCLIENT <= 32,768' 범위의 값 설정 (기본 설정값은 0 이다)

 

MAXCONV 

- 어플리케이션에서 특정 머신에 대한 클라이언트와 서버들이 연관된 동시 컨버세이션의 최대값을 나타낸다.

- Machine 당 Conversation Mode의 최대값 

- 서버당 동시 conversation의 최대값은 64

- '0 < MAXCONV < 32,768' 범위의 값 설정 (디폴트값 1)

 

MAXGTT 

- 어플리케이션에서 특정 머신이 연관될 수 있는 동시 글로벌 트랜잭션의 최대값을 나타낸다.

- 하나의 머신에서 동시에 허용되는 GTRID (Global Transaction-ID) 의 최대값 ( 0 <= MAXGTT => 2048, 0 : Non-Transactional System)

- MACHINES 섹션에서 재설정할 수 있음 ( 디폴트값 100)

 

TYPE 

- 데이터의 표현 방식이 다른 Machine을 구분하기 위한 구분자.

- 30 byte 까지 가능.

- TYPE 항이 같으면 같은 Machine으로 취급하여 데이터 교환시 Encode/Decode를 위한 루틴을 호출하지 않음.

- 네트워크로 연결된 머신들이 이기종일 때 설정.

 

 

CMPLIMIT

- 데이터 압축을 적용시키는 데이터의 최소 길이.

- 설정된 값보다 큰 데이터를 전송할 경우에는 데이터를 압축하여 전송함.

- '<Remote Machine 데이터 압축한계>,<Local Machine 데이터 압축한계>'

- 일반적으로 Local Machine 내에는 압축을 적용하지 않는 것이 빨리 데이터를 전송함.

- MAXLONG은 데이터를 압축을 행하지 않음(기본 설정값은 "MAXLONG,MAXLONG"

 

 

NETLOAD

- 분산 네트워크 환경에서 Machine간의 부하 분산을 위해 설정.

- '0 ≤NETLOAD ≤32,768' 범위의 값 설정(기본 설정값 0).

 

SPINCOUNT

- 서버 프로그램이 IPC 자원에 접근하고자 할 경우에 해당 자원을 다른 머신에서 사용하고 있어서 대기해야

    할 경우에 대기 상태로 들어가기 전에 재시도할 횟수를 지정.

- 해당 머신의 CPU가 하나라면 '0'로 설정하여 바로 대기 상태로 들어가도록 하여 이전에 그 자원을 사용하던

    프로세스가 CPU를 사용할 수 있도록 해주고, 2개 이상의 CPU를 갖는 머신이라면 '0'보다 큰 값을 설정.

 

 

 

TLOGDEVICE

  - TLOG를 포함하는 Tuxedo 파일 시스템의 이름.

  - 이 값이 없으면 TLOG가 없는 것으로 간주.

  - 최대 스트링의 길이 64 Byte 까지 가능.

 

 

 

TLOGNAME

  - 분산 네트워크 환경 하에서 각 머신의 트랜잭션 로그의 이름.

  - 기본 설정값은 TLOG.

 

 

TLOGSIZE

  - 물리적 페이지의 TLOG 크기.

  - '0 ≤NETLOAD ≤2,048' 범위의 값 설정(기본 설정값 100).

  - 일반적으로 MAXGTT설정값과 일치.

 

ULOGPFX

  - TPESYSTEM 코드에서 반환하는 모든 ATMI 에러를 설명하는 에러 로그 파일의 이름.

  - 기본설정은 APPDIR"ULOG.mmddyy"로 생김.

 

ENVFILE

  - System/T에 의해 기동이 되는 프로세스에 대한 환경변수 설정을 위한 파일.

  - TUXDIR, APPDIR 환경변수는 미리 설정이 됨.

  - FIELDTBLS, FLDTBLDIR 등의 환경변수가 설정이 됨.

  - 모든 환경변수는 Hard Coded 되어야 함(FLDTBLDIR=$APPDIR은 불가).

 

 

[Tuxedo] RESOURCES section

2022. 8. 18. 17:46

RESOURCES 섹션 : 시스템에서 사용하는 자원을 정의 

 

RESOURCE 섹션에서 주요한 파라미터는 IPCKEY MASTER DOMAINID 

 

IPCKEY, MASTER, DOMAINID 

IPCKEY는 내부적으로 Bulletine Board, Message Queue, SemaFore 등을 할당한다.

SHM 모드에서는 BBL의 이름을 규정하고,

MP 모드에서는 DBBL의 Message Queue 이름을 규정한다.

IPCKEY 값은 32,768 ~ 262,143 범위의 값이어야 하고, 전체 시스템에서 유일한 값으로 숫자 또는 16진수이어야 한다.

 

MASTER는 어플리케이션의 기동과 관리를 담당하는 머신을 지칭한다.

한개 또는 두 개의 논리적인 머신 구분자(LMID, Logical Machine Identifier)로 주어진다.

두 개의 LMID는 서버 이동(Server Migration)이 허용된 경우를 말한다.

값은 임의의 30자 이내 또는 16진수이어야 한다.

 

DOMAINID는 논리적인 도메인을 구분할 수 있는 구분자를 지칭한다.

값은 임의의 30자 이내 문자 또는 16진수이어야 한다.

 

UID, GID, PERM은 어플리케이션에 대한 접근을 관리하기 위한 값들이다.

UID는 Tuxedo System/T 관리자의 User-ID

GID는 Tuxedo System/T 관리를 위한 Group-ID 이며 

UID, GID의 디폴트값은 tmloadcf 명령을 사용하는 User-ID이며, 예외적으로 MACHINES 섹션에서 재설정할 수 있다. 항상 작은 곳을 먹는다.

PERM은 Tuxedo IPC 자원에 대한 접근을 관리한다. (0111~0777). 디폴트값은 0600이며, MACHINES 섹션에서 재설정할 수 있다. 늘 작은 곳은 먹는다.

 

 

MAXACCESSERS, MAXSERVERS, MAXSERVICES

IPC 자원은 빠른 처리를 위해 할당이 되므로 적당한 크기로 설정한다. 과다하게 설정 시, 메모리 소모가 너무 많다. 너무 적게 설정해도 한계에 걸린다.

MAXACCESSERS는 MACHINES 단위로 Tuxedo/T와 접속 가능한 프로세서의 수 이다.

MAXACCESSERS = Machine 당 AP server의 수 + Machine 당 TMS의 수 + Machine 당 WSL의 수 + Machine 당 WSH의 수 + Machine 당 MAXCLIENTS의 수 + Native Client의 수 + ( Machine 당 tmadmin Process의 수 -1) 

1개의 프로세스에 대해 1개의 세마포어가 사용된다.

0 < MAXACCESSERS < 32,768  범위의 값으로 설정한다. (디폴트 50)

 

 

MAXSERVERS

시스템 전체에서 사용이 되는 서버 프로세스의 최대값 

0 < MAXSERVERS < 8,192 범위의 값으로 설정한다. (디폴트 50)

 

MAXSERVICES 

시스템 전체에서 사용이 되는 서비스 수의 최대값 

0 < MAXSERVICES < 32,768 범위의 값으로 설정한다. (디폴트 100) 

 

MAXGROUPS 

GROUP의 최대 개수로 100 <= MAXGROUPS < 32,768 범위의 값으로 설정한다. (디폴트 100)

 

MAXNETGROUPS 

Network Group으로 지정할 수 있는 최대 갯수 

1 <= MAXNETGROUPS < 8,192 범위의 값으로 설정한다. (디폴트 8)

 

MAXMACHINES 

Netwrok 환경으로 구성할 UNIX Machine의 최대 갯수 

256 <= MAXMACHINES < 8,192 범위의 값으로 설정한다 (디폴트 256)

 

MAXQUEUES 

Requested Message 를 저장할 Message Queue의 최대 갯수

1 <= MAXQUEUES < 8,192 범위의 값으로 설정한다. 이 값을 설정하지 안흥면 MAXSERVERS의 값으로 설정된다.

 

MAXACLGROUPS

ACL 사용 시 설정한 ACL Group-ID의 최대 갯수 

1 <= MAXACLGROUPS >= 16000 범위의 값으로 설정한다.

 

MODEL 

BB 구성에 필요한 인수 

SHM 전역 공유 메모리를 사용하는 단일 프로세서 상의 어플리케이션 

MP 여러 프로세스 및 네트워크 상에서 동작하는 어플리케이션 

 

LDBAL 

 

시스템 전체의 Load Balancing 알고리즘을 적용할 것인가를 표시한다.

서비스가 하나 이상의 queue를 사용하는 서버들로 구성될 경우에 사용된다.

 

하나의 서버 혹은 MSSQ : LDBAL N       

(멀티 서버 싱글 큐) 

그외의 경우                        : LDBAL Y

 

로드밸런싱은 Load Factor 및 Message Queue에 쌓인 데이터 건수에 의해 결정된다.

 

 

CMTRET 

 

tpcommit()에 관한 성격을 규정한다 (반환값을 제어한다)

COMPLETE : TP_CMT_COMPLETE 설정과 같음 (2PC 후에 return 됨)

LOGGED     : TP_CMT_LOGGED 설정과 같음 (1 Phase 후에 return 됨)

 

디폴트 값은 COMPLETE(2PC)임

tpscmt()에 의해 재설정될 수도 있음

 

 

OPTIONS

시스템 구성 옵션을 설정하는데, 하나 이상의 옵션을 선택한 경우 Comma로 옵션을 구분함.

LAN : 네트워크 상의 어플리케이션 

MIGRATE : 서버 이동이 필요함을 표시 

NON_XA : XA Transaction을 허용하지 않음

NO_AA : 보안과 관련된 감사와 인증 관련 함수를 호출할 수 없음.

 

 

SYSTEM_ACCESS

어플리케이션의 클라이언트/서버로 부터 공유 메모리에 있는 시스템 테이블에 대한 접근을 제한한다.

PROTECTED : 어플레이션과 같이 컴파일된 /T 라이브러리는 시스템 코드를 실행시키지 않고는 공유 메모리에 접근할 수 없음.

FASTPATH : /T 라이브러리는 항상 공유 메모리에 접근할 수 있음.(디폴트)

NO_OVERRIDE : 위의 설정이 tpinit() 호출이나 SERVERS 섹션에 의해 재설정되지 않음.

 


 SECURITY 

어플리케이션을 접근을 할 수 있는 권한을 설정하여 접근을 제한한다.

NONE : Security를 부여하지 않음.

APP_PW : 어플리케이션 비밀번호에 의한 보안 

USER_AUTH : 사용자인증에 의한 보안 

ACL : Access Control List에 의한 보안 

MANDATORY_ACL : Madatory ACL에 의한 보안 

 

AUTHSVC

인증 서비스의 이름 (APP_PW가 설정되어있어야 한다)

 

MAXGTT 

어플리케이션에서 특정 머신이 연관될 수 있는 동시 글로벌 트랜잭션의 최대값을 나타낸다.

하나의 머신에서 동시에 허용되는 GTRID (Global Transaction-ID) 의 최대값 ( 0 <= MAXGTT => 2048, 0 : Non-Transactional System)

MACHINES 섹션에서 재설정할 수 있음 ( 디폴트값 100)

 

MAXCONV 

어플리케이션에서 특정 머신에 대한 클라이언트와 서버들이 연관된 동시 컨버세이션의 최대값을 나타낸다.

Machine 당 Conversation Mode의 최대값 

서버당 동시 conversation의 최대값은 64

0 < MAXCONV < 32,768 범위의 값 설정 (디폴트값 1)

 

MAXBUFTYPE, MAXBUFSTYPE 

 

BB의 버퍼 타입 테이블에 적용될 수 있는 최대 버퍼 타입 갯수.

어플리케이션에서 사용하는 버퍼와 하위 버퍼 유형의 최대 갯수.

(MAXBUFTYPE 디폴트 16 / MAXBUFSTYPE 디폴트 32)

0 <= MAXBUFTYPE< 32,768

 

SCANUNIT, SANITY, DBBLWAIT, BBLQUERY, BLOCKTIME 

Time-out과 정기적인 검사를 위해 설정하는 시간

SCANUNIT : 검사를 위한 시간 단위 ( 2 또는 5의 배수로 설정해야하고 60초 또는 60초 보다 적은 초 단위로 설정해야한다, 디폴트값 10 )

SANITYSCAN : 서버의 안정성 체크, BB의 데이터 구조 체크 ( 0 이상이어야함. 디폴트 값 12)  

DBBLWAIT : BBL의 응답을 기다리는 시간 (디폴트 20초 또는 SCANUNIT * DBBLWAIT )

BBLQUERY : DBBL이 BBL을 체크하는 시간 간격 (0 보다 커야함, 디폴트값 SCANUNIT * BBLQUERY, 대략 300초)

BLOCKTIME  : BLOCKING Message에 대한 time-out 시간 (디폴트값 SCANUNIT * BLOCKTIME = 약 60초, 최대 300초를 넘어서는 안됨)  

 

NOTIFY, USIGNAL

자발적인 메세지 처리에 대한 설정값

NOTIFY : 클라이언트에서 자발적인 메시지 수신 방법을 설정

DIPIN : tpchkunsol() 함수 호출이나 ATMI 호출시에만 메시지 수신 (클라이언트 프로그램 내에서 주기적으로 tpchkunsol() 함수를 수행하여 Broadcasting 메시지를 확인)

SIGNAL : tpsetunsol() 함수에 의해 설정된 시그널 핸들러에 의해 수신. tpinit() 함수 호출시에 재설정이 될 수도 있음. (클라이언트 프로그램 내에서 DIPIN 방식과 동일하게 tpchkunsol() 함수를 수행하지만, Native Client(Unix client)에서는 tpchkunsol() 함수 없이도 Broadcasting 메세지를 확인)

IGNORE : 클라이언트는 자발적인 메시지를 무시. (가장 중요)

- 두가지 유형의 signal이 발생할 수가 있음

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

1. Oracle.com / Resources / middleware / oracle tuxedo 로 들어와서 Download 클릭 

 

 

2. for Linux 클릭 

 

 

3. 원하는 설치파일을 .zip파일로 넣어둔다.

 

 

 

4. sftp를 통해서 원격서버로 파일을 전송할 수 있다.

 

 

sftp를 이용해서 파일 전송하는 방법은

이 포스팅을 참고하자!

https://nomajorkorean.tistory.com/3?category=1090780

 

 

 

 

 

서버로 옮겨진 파일을 unzip으로 풀어준다.

 

 

 

 

파일을 풀고나면 /Disk1/install 디렉토리로 이동하여 runInstaller.sh 쉘 파일을 실행시켜주어야하는데, 무엇인가 이상해보인다.

 

역시나...

역시나... 권한부여를 해줘야한다.

 

chmod로 바꿔주면 된다.

 

권한부여 완료.

 

 

실행을 하려는데 또 다시 문제 발생.

 

JAVA_HOME이 준비되지 않았단다.

 

찾아보니...

 

graalvm 를 설치하거나 JAVA JDK를 설치해주어야한다. 

graalvm은 Java로 구현된 HotSpot/OpenJDK 기반의 Java VM 및 JDK이다.

JAVA 뿐만 아니라 nodejs, python, ruby 도 지원한다.

 

 

Oracle Linux 8 부터는 yum 명령어로 설치할 수 있다.

 

yum install graalvm22-ee-17

 

하지만 나는 테스트용으로 Oracle Linux 7.9 버전을 설치했으니 JAVA JDK를 따로 설치해야했다.

 

기본적으로 Linux에서는 Java가 설치되어있다.

java 8 이어야만 하는 이유가 따로 있다. 

JAVA 9 버전 이후에는 "java.awt.peer.ComponentPeer" 메소드가 삭제되어 설치 관련 xwindows에서 Exception이 발생됩니다. 라고 한다.

글의 출처는 이곳 입니다.  https://m.blog.naver.com/munjunhw/222739700135?referrerCode=1#:~:text=GraalVM%20%EC%84%A4%EC%B9%98,%EC%B0%B8%EA%B3%A0%EC%9A%A9%EC%9C%BC%EB%A1%9C%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%85%A8%EC%9C%BC%EB%A9%B4%20%ED%95%A9%EB%8B%88%EB%8B%A4.

 

2장. Oracle Tuxedo 12c 설치

안녕하세요. The Negator 입니다. 이번 주제는 Oracle Tuxedo 설치입니다. 설치에 앞서 구성될 환경에 ...

blog.naver.com

사실 저도 이분 것을 계속 참고하면서 설치를 해보고 있습니다...!!! 감사합니다!!!!!!

 

 

따라서 javac만 따로 설치해야한다.

 

음 많다...
좀 더 추려보자.
찾았다. 요놈을 설치해야한다.
이 설치화면이 나오면 설치가 잘 작동되어가는 것.
설치된 javac 버전확인
다시 본론으로 들어왔다.

JAVA_HOME이 set 안되어있다?

 

그럼 환경변수를 설정해주라는 뜻이겠지.

 

설치한 JAVA JDK 경로를 JAVA_HOME으로 지정해주어야한다.

 

근데 내가 어디다가 설치했지? 찾으러가자...

 

 

 

/usr/lib/jvm/java-1.8.0-openjdk

 

찾았다... ( find 명령어 활용하자 )이 디렉토리경로를 환경변수에서 설정해줘야함.

 

.bash_profile을 찾아서 환경변수를 설정해줘야하는데 이놈도 찾기 힘들다.

 

파일명 앞에 .가 붙으면 hidden 파일이라서 

 

ls -al 또는 ls -a 명령어를 사용해야 보인다 

 

일단 root관리자 모드로 들어가서 

 

find / -name bash*   

라고 파일을 검색하면 나온다.

 

 

이제 다시 ./runInstaller.sh 를 실행해본다.

 

 

또 안된단다. JAVA_HOME이 안됐다네...

 

다시 해보자...알아보자...

 

계속 업데이트중

 


이런저런 오류 때문에 다시 설치를 진행하였다.

 

Silent 모드 설치 방식

 

1. 리눅스 서버에 다운로드 받은 tuxedo12.2.2.2 버전의 파일과 .rsp 전송 

 

unzip zip파일명 으로 zip파일을 풀어준다.

 

 

 

rsp 파일에 권한변경을 해줌.

 

 

 

chmod 750 파일명

으로 .rsp 파일을 권한변경 해준다.

 

 

 

 

 

 

vi 편집기로 Response File 생성을 하고   OUI 사용자 인터페이스를 사용하여 설치 옵션을 선택한다.

필수로 입력해야하는 것은 groupname / location / oracleHome / OracleHomeName 이다.

 

unzip이 된 디렉토리의  Disk1/install/ 디렉토리에서 runInstaller.sh 쉘스크립트를 실행해줘야한다.

 

./runInstaller.sh -silent -responseFile /home/admin/tuxedo/tux12c_install.rsp

 

 

에러가 나오고 설치가 끊기면 -force 로 다시 설치를 진행해본다.

./runInstaller.sh -silent -responseFile /home/admin/tuxedo/tux12c_install.rsp -force

 

 

설치가 순탄해보이지만 중간에 스크립트 실행해주는 단계가 또 있다.

 

/home/admin/oraInventory/orainstRoot.sh

이 디렉토리에서 orainstRoot.sh 라는 쉘스크립트를 실행해줘라고 나온다.

 

끊긴 설치가 아쉽지만 명령대로 한다.

 

root 관리자로 로그인하고 디렉토리 이동 후 orainstRoot.sh 쉘스크립트를 실행한다.

 

 

실행 완료.

실행을 한 후에 다시 설치를 진행한다.

 

설치가 진행 되는 중
ㅇㅇ요약에서 products.xml의 위치 (products.xml은 아마 tuxedo 12c에 관한 내용..) / Oracle Home / 설치 유형 / 공간 요구 사항 / 새로 설치된 것과 이미 설치 되어 있는 것들이 보여지게 된다

 

 

Silent 모드로 완벽하게 설치가 됐다.

 

 

 

 

 

WebLogic과 비슷한 부분이 많은 것 같다.

 

'Middleware > Tuxedo' 카테고리의 다른 글

[Tuxedo] MACHINES 섹션  (0) 2022.08.22
[Tuxedo] RESOURCES section  (0) 2022.08.18
미들웨어 개념 및 종류  (0) 2022.08.09
[Tuxedo] UBBCONFIG 환경 파일  (0) 2022.08.09
[Tuxedo] SHM 모델 환경파일 sample  (0) 2022.08.08


Tuxedo service에 접근하는 워크샵을 사용하여 Web Sevice 또는 Java Application을 개발하기 위해,

반드시 WebLogic Tuxedo Connector(WTC)를 사용해야한다.

 

WTC는 WebLogic 서버와 Tuxedo 서버를 연결하는 역할을 한다. 

 

이것 또한 환경파일 BBCONFIG에서 설정한다.

 

==

 

1. UBBCONFIG에서 Tuxedo domain을 정의하고 사용 가능한지 확인한다.

 

1) GROUP section에서 GROUP을 정의

 

GWGRP LMID=simple GRPNO=2

 

2) Server section에서 정의

 

DMADM SRVGRP=GWGRP SRVID=1
GWADM SRVGRP=GWGRP SRVID=2
GWTDOMAIN SRVGRP=GWGRP SRVID=3

 

 

 

2. UBBCONFIG에서 Tuxedo에 WSL 연결을 정의하고 사용 가능한지 확인한다. 

 

1) GROUP section에서 GROUP를 정의 

 

WLSGROUP LMID=simple GRPNO=3

 

2) SERVERS section에서 

 

WSL SRVGRP=WSLGRP SRVID=1 CLOPT="-A -- -n // machine:port"

 

 

3. DMCONFIG에서 WTC가 작동하고 있는 network address (NWADDR)을 구체화 해준다.

WTC service configuration에서 Access point ID는 corresponding remote and local의 ID들과 동일해야합니다. 

 

  • The Tuxedo local access point ID must match the WTC remote access point ID.
  • The Tuxedo remote access point ID must match the WTC local access point ID.

 

< DMCONFIG 파일 샘플 >

A sample DMCONFIG file follows.

# DMCONFIG FILE


*DM_RESOURCES

VERSION="U22"


*DM_LOCAL

<LOCAL DOMAIN NAME> GWGRP=GWGRP2
ACCESSPOINTID="<LOCAL DOMAIN NAME>"
AUDITLOG="<APPDIR>\aud"
BLOCKTIME=20
DMTLOGDEV="<APPDIR>\tlog"
DMTLOGNAME="DMTLOG_TDOM1"
MAXDATALEN=56
MAXRACCESSPOINT=89
MAXTRAN=100
BLOB_SHM_SIZE=1000000
SECURITY=NONE


*DM_REMOTE

<REMOTE DOMAIN NAME> ACCESSPOINTID="<REMOTE DOMAIN NAME>"
ACL_POLICY="LOCAL"
CREDENTAIL_POLICY="LOCAL"


*DM_TDOMAIN

<LOCAL DOMAIN NAME> NWADDR="//<LOCAL DOMAIN NETWORK ADDRESS>:<PORT NUMBER>"

<REMOTE DOMAIN NAME> NWADDR="//<REMOTE DOMAIN NETWORK ADDRESS>:<PORT NUMBER>"


*DM_REMOTE_ERVICES

 

4. Tuxedo application을 부팅하기 위한 명령어 

 

tmloadcf -y <name>.ubb



dmloadcf -y domconfig



tmboot -y

 

미들웨어 개념 및 종류

2022. 8. 9. 14:31

개념 

 

클라이언트와 서버 간의 통신을 담당하는 시스템 소프트웨어 또는 컴퓨터와 컴퓨터의 연결을 담당하는 시스템 소프트웨어. 

 

Middle + Software 

 

종류 

 

데이터베이스 미들웨어 

 

- 데이터 베이스 벤더에서 제공하는 클라이언트에서 데이터베이스와 연결하기 위한 미들웨어

 

RPC(Remote Procedure Call) 미들웨어 

 

- 원격 프로시져를 마치 로컬 프로시져 처럼 호출하는 방식의 미들웨어 

 

MOM(Message Oriented Middleware) 미들웨어 

 

- 메세지 기반의 비동기형 메세지를 전달하는 방식의 미들웨어 

 

TP-Monitor 미들웨어 

 

- 온라인 트랜잭션 업무 (은행 계정, 항공기/버스 예약 업무 등)에서 트랜잭션을 처리, 감시하는 미들웨어.

사용자 수가 증가하여도 빠른 응답 속도를 유지해야 하는 업무에 적합 함

 

ORB(Object Request Broker) 미들웨어 

 

- 객체 지향 미들웨어, 코바(CORBA)표준 스펙을 구현한 미들웨어.

최근에는 TP-Monitor 가 가지고 있는 장점(트랜잭션 처리, 모니터링 등)을 추가로 구현하고 있음

 

Web Server 또는 WAS(Web Application Server) 미들웨어.

 

- 클라이언트/서버 환경 보다는 웹 환경을 구현하기 위한 미들웨어. Web Application Server는 HTTP 세션 처리를 위한 웹서버 기능 뿐만 아니라, 미션-크리티컬한 기업 업무까지 자바, EJB 컴포넌트 기반으로 구현 가능하게 해줌.

 

 

+ Recent posts