상세 컨텐츠

본문 제목

턱시도 (TUXEDO)

프로그래밍/JAVA

by 라제폰 2009. 1. 30. 18:07

본문

 ♬ 턱시도(TUXEDO)

 

 

 

1. 등장 배경

  턱시도(TUXEDO) Transaction Manager의 표준으로 X/OPEN, OSF 등의 표준화 근간을 제공하였고,

  현존하는 대부분의 TP Monitor들이 턱시도를 기반으로 개발되었다.

  Tmax Transaction Maximization의 약어로서 "트랜잭션 최대화"라는 의미로

  Tmax는 트랜잭션 처리의 ACID특성을 만족시키면서 사용자가 원하는 최적의 개발환경을 제공하며

  개방형 시스템의 국제 표준인 X/Open DTP모델을 준수하는 TP-Monitor이다.

 

2, TP 모니터

 (1) 개념

  TP monitor (transaction processing monitor)?

   • 서버 등에서 트랜잭션이 프로세스 내의 한 단계로부터 다음단계로  잘 넘어가는지를 감시하는 프로그램이다.

   • 각기 분리된 두개의 프로그램 사이에서 매개역할을 하는 미들웨어의 일종으로 컴퓨터간 정보교환과 같은

      트랜잭션이 단계적으로 진행되는지를 관리하는 프로그램이다.

   

  TP monitor의 목적은?

  트랜잭션 처리가 완전하다는 것을 보장하고, 만약 에러가 발생하면 적절한 조치를 취하기 위한 것이다.

  대형 전산시스템의 경우 하루 수천만건의 트랜잭션이 발생하게 되는데, TP monitor는 시스템의 부하를 조절하고

  장애 발생을 방지해 안정적으로 시스템이 운영되도록 해준다.

  본래 TP monitor는 웹 환경이 아닌 전통적인 클라이언트 서버 환경에서 사용할 수 있도록 개발되었다.

  그러나 최근 개발된 TP monitor는 웹 환경에서도 클라이언트 서버환경과 똑같이 활용할 수 있도록 개발했다.

 

  TP monitor는 미들웨어의 대표적인 제품군으로 가격이 비싼 편인데 그동안 미국 BEA사의 턱시도가  세계시장을    독점하다시피 했다.

 

 (2) 분산 TP moniter 선택시 고려사항

  분산 TP monitor는 분산된 환경에서 어플리케이션간 상호 통신 (Messaaging), 분산 트랜잭션들의 모니터링  

  (Monitoring) 및 관리기능 (Management)등을 수행하여야 하며, 선택할 때 고려할 사항들은 다음과 같다.

 

 

 (3) 원리

 

 

 

 

3. 개념

 (1) 턱시도

  ① 제품 명칭

   • 제품명 : BEA TUXEDO Version 6.4

   • 제작사 : AT&T USL (Unix System Lab.)

   • 발표년도 : 1978 (Version 6.4 1998년에 Release)

   • 국내 공급시기 : 1993

 

  ② 제품 사용환경

   • 다수의 사용자 (100 이상 - 수십만, 수백만)

   • 전사적이며, Mission Critical 업무

   • 대량의 분산 트랜잭션 처리

      - 2단계 commit을 통한 데이타 무결성 보장

   • LAN WAN이 혼재된 분산 환경    

   • 이기종 하드웨어 및 이기종 DB 사용 환경

   • 빠른 응답속도 

 

 

4. 역사

 (1) 턱시도

  1. 1978 UNIX System Laboratory (USL)에서 Transaction Manager로 턱시도 발표.

  2. Transaction Manager의 표준으로 X/OPEN, OSF 등의 표준화 근간을 제공함.

    (현존하는 대부분의 TP Monitor들이 TUXEDO를 기반으로 개발 되었음.)

  3. TPC Benchmark를 발표한 하드웨어, DBMS 업체 중 80% 이상이 TUXEDO를 채택함.

  4. 세계 시장 점유율 40% 이상을 차지하고 있는 TP Monitor의 표준 제품임.

  5. 1993년부터 국내 공급.

 

 

 

 

 

 

 

 

5. 환경

 (1) 턱시도

  ① 특징

   턱시도는 메임프레임 수준의 OLTP 업무를 오픈 클라이언트/서버 환경에서 개발하고, 운영하는 기반구조를

   제공하는 분산 TP 모니터이며, 다음과 같은 특징을 갖는다.

   • 분산 온라인 트랜잭션 처리 모니터 -> 다양한 하드웨어와 다양한 DB 연동

   • 오랜 사용실적을 갖는 TP monitor -> 안정적인 제품

      (78년 미국의 AT&T가 전화 회선 교환 업무를 위해 개발)

   • X/Open의 각종 표준 준수 -> 이기종간 상호 운용성이 높음

   • 성능 향상 -> TPC-C BMT 자료 참조 (www.tpc.org 참조)

   • 단순, 명료한 API 제공 -> 어플리케이션 개발 용이

   • GUI Admin. Tool 제공 -> 관리 효율성

 

  ② 시스템 요구사항

    <1> 서버 요구사항

    • 하드웨어

        - 메모리 : UNIX 기종에 따라 상이함.

               (8 ~16 Mbytes) + 어플리케이션당 (0.5 ~1) Mbytes 이상

        - 디스크 : 50 Mbytes

    • 소프트웨어

        - UNIX, Windows-NT

        - C Compiler (COBOL 사용시 MF COBOL Version 3.x)

    • 네트워크

        - TCP/IP

 

    <2> 클라이언트 요구사항

    • 하드웨어

      - 메모리 : 1.5 Mbytes 이상

      - 디스크 : 2.5 Mbytes 이상

    • 소프트웨어

      - DOS, Windows(3.1 or 95), Windows-NT, Mac., OS/2

      - Visual C++ Verson 1.5 이상 혹은 4GL Tool

    • 네트워크

      - TCP/IP

 

 

 

 

 

 

 

 

 

 

 

 

6. 사용시 개선점

 (1) 턱시도

 

        

 

 

7. 턱시도의 동작 원리

 (1) 한 머신내에서 TUXEDO의 동작원리는 다음과 같으며, 하나의 WSH 프로세스는 여러 개의 Client들을 제어한다. (High Volumn : 10여개, Low Volumn : 30 ~ 50여개)

 

1) Client에서 TUXEDO와 접속을 요청하면 WSL와 접속 됨.

2) WSL WSH Address Return.

3) WSL WSH Connection 요청.

4) Client에서 서비스를 요청 하면 WSH와 접속. (이후 데이타는 WSH와 송수신)

5) WSH는 해당 서비스의 존재 위치 및 관련 정보를 Bulletin Board에서 찾음.

6) 해당 서버의 어플리케이션에 서비스 요청.

7) 서버의 어플리케이션은 해당 서비스를 수행하고, 그 결과를 WSH Return.

8) WSH Return된 결과를 Client로 보냄.

 

 (2) 분산환경에서의 TUXEDO의 내부 동작원리를 프로세스 관점에서 살펴보면 다음과 같다.

DBBL

Master 서버머신에만 존재하며, 주기적으로 모든 서버의 BBL 정보를 일치시키는 프로세스 로서 주기는 사용자가 정의 함.

BBL

로컬 머신의 어플리케이션들 (AP1 ~ APn)의 상태를 주기적 으로 점검하는 프로세스로서, 점검주기 는 사용자가 정의함.

Bridge

머신간의 데이터 송수신 통로 역할을 수행하는 프로세스로서, 여러 개를 띄워 사용할 수 있음.

 

8. 기능

 (1) 턱시도

   ① 분산 트랜잭션 처리기능

      - 턱시도는 X/Open DTP 모델을 준수하며, 트랜잭션 관리자로서 트랜잭션에 참여한 데이터베이스들을 제          어하여 데이터의 무결성을 보장한다. 또한 트랜잭션에 참여한 어플리케이션간의 트랜잭션 메시지 통신기능을        제공한다.

   ② 위치 투명성 및 데이타 의존형 라우팅 기능

      - 어플리케이션에서 트랜잭션을 이름으로 요청하면 턱시도는 이를 최종 목적지에 전달하여 어플리케이션         에게 트랜잭션에 관한 위치 투명성을 제공한다. 같은 이름의 트랜잭션이 여러 개의 머신에 존재하는 경우에         도 사용자가 입력한 필드의 데이터 값에 따라서 라우팅하는 기능을 제공한다. 따라서 어플리케이션은 분산          환경의 구성으로부터 독립적이며, 환경이 변하여도 수정없이 운영된다.

   ③ 부하 분산(Load Balancing) 기능

      - 시스템의 부하에 따라 부하 분산이 수행되어, 부하가 적은 곳에서 트랜잭션이 처리된다. 부하가 전 시스템         에 고르게 분산되므로 전체적인 트랜잭션 처리량의 증대와 응답속도의 향상을 보장한다.

       턱시도의 부하 분산은 어플리케이션간 혹은 서버 머신간 이루어진다.

   ④ 서비스 단위의 우선순위 스케쥴링 기능

      - 서비스 (트랜잭션) 종류별 혹은 사용자가 원하는 우선순위 내용별로 스케쥴링하여 특정 서비스가 우선적으         로 처리되게 할 수 있어, 시스템이 비지한 경우에도 긴급한 트랜잭션은 빨리 처리된다.

   ⑤ 시스템 리포트 기능

      - 온라인 시스템을 운영하면서 성능에 관련된 정보들을 수집한다. 이를 참조하여, 시스템 성능을 개선하는데         기초자료로 활용한다.

       • 머신간 메세지 교환 수

       • 온라인 프로세스별 트랜잭션 처리 수

       • (Queue)별 큐잉되어 있는 트랜잭션 수

       • 시스템에서 처리중인 트랜잭션 수

       • 클라이언트별 트랜잭션 시작, 취소, 완료 수

       • 일별, 시간대별, 트랜잭션 종류별 트랜잭션 처리 시간

   ⑥ 보안 (Security) 기능

       - 턱시도는 다음과 같이 5단계의 Security를 제공한다.

       • 1단계 : UNIX 시스템에서 제공되는 Read, Write, Execute Permission

       • 2단계 : 어플리케이션 Password의 사용

       • 3단계 : TUXEDO가 제공하는 인증서버에 의한 사용자 권한 부여

       • 4단계 : ACL(Access Control List )에 의한 사용자별 특정 서비스 수행

       • 5단계 : Kerberos와 같은 Security Package를 연결하여 사용 가능

    ⑦ 다양한 프로세스간 통신 기능

       - 어플리케이션은 업무의 특성에 따라 다양한 통신 방식을 필요로 하는데, TUXEDO는 다음과 같은 다양한          통신 모델들을 제공한다.

       a) 동기형 통신   

       b) 비동기형 통신                

       c) 대화 (Conversational) 통신             

       d) 전달방식을 이용한 통신 (Request Forwarding)

       e) /Q를 이용한 Stored and Forwarding      

       f) Broadcasting 혹은 Notify

       g) Event Broker

       h) RPC TxRPC -> RPC는 동기형 통신 방식만을  제공

          (RPC에 트랜잭션 개념을 도입한 것이 TxRPC )

    ⑧ 어플리케이션 프로세스의 관리 및 통제 기능

      - 턱시도는 온라인 어플리케이션에 관련된 모든 관리를 중앙 집중식으로 관리하며 통제한다.  트랜잭션에           관한 정보들을 모니터링하고 특정 트랜잭션들을 관리자가 직접 처리하는 기능을 제공한다.

      중앙 집중 관리는 Master 서버 머신에서 다음과 같은 업무들을 수행하며, 각각의 노드서버 머신에서는 이들        정보에 대한 모니터링이 가능하다. 이러한 관리 및 통제는 Web-Based GUI 툴에 의하여 수행된다.

        • 온라인 시스템 부팅, 셧다운

        • 특정 온라인 프로세스 부팅, 셧다운

        • 특정 트랜잭션 서비스 중지, 재개

        • 특정 트랜잭션 커밋, 취소

        • 특정 클라이언트 접속 제거

        • 머신 단위 혹은 그룹 단위의 이주(Migration)

        • 머신 연결, 단절

        • 도메인(Domain) 구성 관리

        • 동적 구성 관리

         -> On-Line 상에서, 즉 서비스가 수행중인 상태에서 머신, 서버 혹은 서비스등을 동적으로(Dynamic)             추가하거나, 기존의 Parameter들을 변경할 수 있음

    ⑨ 장애 대책

      - 무정지 온라인 시스템을 운영하기 위하여 각종 장애 사항에 대처하는 기능을 제공하는데, 턱시도는             다음과 같은 장애 대응책을 갖고 운영된다.

 

 

 

    ⑩ 도메인 (Domain) 구성 관리 기능

      - 대규모 숫자로 구성된 시스템을 운영하는 경우, 관리가 가능한 단위로 도메인을 구성하여 관리한다. ,         메인은 턱시도에서 관리의 단위이며 도메인 구성시 결정 요소인 지역적, 기능적, 관리적인 측면을 고려하           여 구성한다. 턱시도 도메인 사이의 연결은 /TDOMAIN을 이용하여 연결하며, 다른 TP monitor 연결              /OSITP 도메인을 이용하여 연결한다.

       도메인은 지역/기능별 응용 시스템의 구성 및 통합의 편리성을 제공하고, 가용성을 높일수 있다. 또한 강력        한 보안 기능을 제공한다.

 

 

 

 

 

    ⑪ 다양한 개발환경 지원 

   - 턱시도는 다양한 하드웨어, 오퍼레이팅 시스템, 개발도구, 데이타베이스를 지원하므로, 사용자에게 개발          의 유연성을 제공하며, Plug and Play 기능을 사용할 수 있게 한다.

     ) 지원 하드웨어 (30 여종)

       - Data General,  Digital,  Fujitsu,  HP,  IBM,  Microsoft  Windows-NT,  NCR,  NEC,  Pyramid, SCO,          Sequent,  Silicon Graphics,  Simens Pyramid,  SUN,  Unisys,  AT&T,  Amdahl,  Bull,

        Tandem Guardian,  Tandem Integrity,  COMPAQ,  Dell,  ICL,  Intel x86,  KSR,  Motorola, Olivetti,             Stratus,  Teradata,  TICOM,  주전산기-III          

     ) 지원 O.S ( 20 여종)

       - DG/UX,  Digital UNIX,  Windows-NT (Intel, Alpha),  UPX/DS,  HP-UX,  AIX,  OS/400,  MP-RAS,          US/4800,  DC/OSx,  UnixWare,  OpenServer,  DYNIX/ptx,  IRIX,  Solaris,  SunOS,  SVR4,                    NonStop-UX,  ULTRIX,  UNIX SVR3.2/4.0/4.0,  UTS,  VMS,  Netware,  Windows 3.1/95, DOS

     ) 지원 데이터베이스

       - Oracle,  Informix,  Sybase,  Ingres,  TUXEDO/D   XA 지원 Database.


관련글 더보기