TP-Monitor 소개

본 장은 Tmax를 이해하기 위해 미들웨어와 TP-Monitor에 대한 개념과 기능에 대해 설명한다.

1. 개요

TP-Monitor(Transaction Processing Monitor)는 각종 프로토콜에서 동작하는 세션과 시스템 및 데이터베이스 사이의 최소 처리단위인 트랜잭션을 감시하여 일관성 있게 보관 및 유지하는 역할을 하는 트랜잭션 관리 미들웨어이다.

Tmax는 TP-Monitor 기반의 제품이며, 본 장에서는 Tmax를 이해하기 위한 기본 개념인 미들웨어와 TP-Monitor에 대해서 설명한다.

2. 미들웨어

중앙 집중식 메인프레임(Mainframe) 환경이 운영과 비용 등에서 여러 가지 문제가 나타나면서 업무별로 호스트를 분리하는 즉, 개방형 분산 시스템 환경으로 바꾸는 다운사이징(DOWNSIZING) 방법론이 도입되기 시작했다.

그러나 개방형 분산환경은 메인프레임에서 사용하던 업무를 여러 서버로 분산하여 관리하면서 서로 다른 운영체제 간의 통신이나 각 서버 프로그램 간의 연계, 호환성의 문제가 발생하게 되었다. 이러한 이유로 서로 다른 시스템이나 서버 프로그램, 네트워크 자원을 하나의 단일 사용자 환경으로 사용하려는 요구가 생겼다.

다음은 중앙 집중식 메인프레임 환경과 개방형 분산 시스템 환경의 문제점에 대해서 설명한 표이다.

  • 중앙 집중식 메인프레임 환경의 문제점

    구분 문제점

    비용적 측면

    • 고가의 도입 비용

    • 유지보수 비용 과다 지출

    운영적 측면

    • 업무 프로세스보다는 메인프레임 환경이 최우선시 되므로 사용자 환경이 고려되지 않음

    시스템 측면

    • 이기종 간 통신의 어려움

    • 다른 시스템으로 프로그램 이식 곤란

    • 업무 확장의 어려움

  • 개방형 분산 시스템 환경의 문제점

    구분 문제점

    비용적 측면

    • 네트워크, DBMS 등 전문 기술 요구

    운영적 측면

    • 비효율적인 시스템 운영상의 문제

    • 사용자 환경이 고려되지 않음

    • 분산 환경에 따른 관리 문제

    • 시스템의 관리 및 감독의 어려움

    • 장애가 발생하는 경우 대처가 어려움

    • 다른 서버 간 운영 방법 상이

    • 복수 공급자에 따른 문제

    • 사용자 증가에 따른 급격한 성능 저하

    • 서버 간 부하 차이

    시스템 측면

    • 프로세스 관리

    • 다양한 통신 방식 필요

    • 시스템 보안 기능 취약

    • 이기종 데이터베이스 및 전역 트랜잭션 처리의 어려움

    • 이기종 서버 간 프로그램 이식성 문제

    • 개발상의 문제(OS, 개발 언어 등이 너무 다양)

    • 미들웨어 한 종류로 이질적인 분산 환경에서 트랜잭션 처리 및 프로세스 관리의 기능을 제공

이러한 개방형 분산환경의 문제점을 해결하기 위해서 개발된 소프트웨어가 미들웨어이다.

미들웨어는 분산 컴퓨팅 환경에서 단일 사용자 환경을 제공하고 이기종 간 시스템의 네트워크를 연결하거나 클라이언트와 서버 간의 통신을 담당하거나 또는 컴퓨터와 컴퓨터의 연결을 담당하는 시스템 소프트웨어이다. 미들웨어는 이기종의 하드웨어나 프로토콜, 통신 환경 등을 하나로 연결해서 애플리케이션이나 운영 환경 사이에 원만한 통신이 가능하도록 해준다.

클라이언트와 데이터베이스 서버는 직접 통신을 하지 않고 미들웨어가 두 시스템 간의 통신을 연계한다. 미들웨어에는 업무에 필요한 비즈니스 로직을 가지고 있어서 클라이언트는 미들웨어와의 통신만 고려하고 서버 프로그램도 미들웨어와 통신만 고려하면 된다. 미들웨어를 통해서 클라이언트와 데이터베이스 서버는 하나의 단일 시스템 환경으로 구축이 가능해진다. 이기종 머신에서 사용하는 다수의 데이터베이스 환경에서도 시스템 통합을 보장할 수 있고 데이터의 호환성 및 일관성을 보장할 수 있다. 이러한 환경은 최소의 리소스로 최대의 성능을 제공할 수 있다.

다음은 미들웨어를 사용하여 클라이언트/서버 환경을 구축한 시스템 구성도이다.

figure middleware
미들웨어 동작 원리

미들웨어 제품은 각 제품의 용도와 목적에 따라 다음의 6가지로 나누어진다.

  • TP-Monitor(Transaction Processing Monitor)

    이질적인 분산 환경에서 트랜잭션을 처리하고 각종 처리 절차를 관리하는 기능을 제공하는 서비스이다. Tmax는 미들웨어의 다양한 제품군 중에 TP-Monitor 제품군에 속한다.

  • WAS(Web Application Server)

    웹에서 트랜잭션을 처리하고 이기종 간 상호 통신 기능(J2EE)을 제공하는 서비스이다.

  • MOM(Messaging Oriented Middleware)

    메시지를 큐라고 불리는 전달 중계소에 넣어 처리하고 큐에 의한 메시지 관리 기능을 제공(비동기적)하는 서비스이다.

  • Database Access System

    분산 환경에서 복수 개의 데이터베이스 서버들을 일관된 방법으로 이용할 수 있는 환경을 제공하는 서비스이다.

  • RPC System

    네트워크에서 다른 컴퓨터에 있는 프로그램을 실행(동기적)하는 서비스이다.

  • ORB(Object Request Broker)

    클라이언트 객체가 ORB라는 소프트웨어 버스를 이용하여 원격지 서버의 메소드를 호출하는 기능을 제공하는 서비스이다.

3. TP-Monitor

초기에 대부분의 업무 시스템은 메인프레임 기반의 중앙 집중식 환경으로 구성되어 있었다. 중앙 집중식 환경은 비용이나 관리에 여러 가지 단점을 나타내기 시작했다. 이러한 중앙 집중식 환경의 문제점을 보완하기 위해 대두된 것이 개방형 분산 시스템이다.

그러나 개방형 분산 시스템 또한 시스템 운영이나 관리에 또 다른 문제가 나타났다. 이러한 문제점을 해결하기 위해서 도입된 소프트웨어가 미들웨어이다. 미들웨어 중에 TP-Monitor는 프로토콜에서 동작하는 세션과 시스템 및 데이터베이스 사이의 최소 처리 단위인 트랜잭션을 감시하여 일관성있게 보관 및 유지하는 역할을 하는 트랜잭션 관리 미들웨어이다.

다음은 TP-Monitor의 주요 기능이다.

  • 애플리케이션 개발 용이

    복잡한 업무 프로세스를 개발할 때 데이터 중심에서 기능 중심으로 분산해서 개발한다. 기존 메인프레임 환경은 비즈니스 로직과 데이터 처리 로직이 혼재되어 개발되었다. 따라서 메인프레임 환경에서 애플리케이션의 개발은 상당히 어려웠다.

    그러나 TP-Monitor를 사용하면 미들웨어에는 비즈니스 로직을 구현하고 클라이언트 프로그램은 사용자에게 제공하는 모듈만 구현하면 된다. 그리고 데이터베이스 서버 프로그램은 데이터 관리에 대한 기능만 구현하면 된다. 이러한 기능의 분리는 애플리케이션의 개발을 쉽게 한다.

  • 효율적인 애플리케이션 관리

    분산된 각 업무 시스템을 TP-Monitor를 통해서 관리하므로 각 애플리케이션을 효율적으로 관리할 수 있다.

  • 이기종 DBMS 자원관리

    DBMS의 트랜잭션을 통합 관리하므로 이기종 데이터베이스 간의 자원 관리가 가능하다.

  • 부하 조절

    최적의 자원 사용에 대해 관리하므로 부하를 분산하고 분산 트랜잭션을 지원한다.

  • 수행 속도와 신뢰성

    적은 서버 자원으로 많은 클라이언트를 관리하여 DBMS의 오버헤드를 줄이고 응답시간을 향상시킨다.