KR20030013200A - 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법 - Google Patents

객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법 Download PDF

Info

Publication number
KR20030013200A
KR20030013200A KR1020010047559A KR20010047559A KR20030013200A KR 20030013200 A KR20030013200 A KR 20030013200A KR 1020010047559 A KR1020010047559 A KR 1020010047559A KR 20010047559 A KR20010047559 A KR 20010047559A KR 20030013200 A KR20030013200 A KR 20030013200A
Authority
KR
South Korea
Prior art keywords
transaction
state
manager
remover
java
Prior art date
Application number
KR1020010047559A
Other languages
English (en)
Inventor
박남식
남궁한
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020010047559A priority Critical patent/KR20030013200A/ko
Priority to US10/125,457 priority patent/US6842756B2/en
Publication of KR20030013200A publication Critical patent/KR20030013200A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/466Transaction processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10TECHNICAL SUBJECTS COVERED BY FORMER USPC
    • Y10STECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y10S707/00Data processing: database and file management or data structures
    • Y10S707/99941Database schema or data structure
    • Y10S707/99943Generating database or data structure, e.g. via user interface

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

1. 청구범위에 기재된 발명이 속한 기술분야
본 발명은 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것임.
2. 발명이 해결하려고 하는 기술적 과제
본 발명은, 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스(JTS)에 상태제거기를 구비하여, 객체 트랜잭션의 종료시 상태제거기를 통해 메모리에 존재하는 트랜잭션 상태 객체들을 제거함으로써, 메모리 부족 현상을 해소하기 위한 자바 트랜잭션 서비스(JTS)의 상태객체 제거 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하고자 함.
3. 발명의 해결방법의 요지
본 발명은, 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스의 상태객체 제거 방법에 있어서, 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시에, 상기 자바 트랜잭션 서비스(JTS)에 상태제거기와 상태제거기 어댑터를 구비하고, 상기 상태제거기를 등록한 상기 상태제거기 어댑터를 동기 객체로 객체 트랜잭션 서비스(OTS)의 조정자에 등록하는 제 1 단계; 트랜잭션의 종료 단계에서, 상기 조정자가 승인 프로토콜 처리를 완료한 다음, 등록된 동기 객체들에게 완료후 동기화를 요청하여 동기 객체가 완료후 동기화를 실행하도록, 동기 객체로 등록된 상기 상태제거기 어댑터를 구동시키는 제 2 단계; 및 상기 상태제거기 어댑터가 상기 상태제거기를 구동시켜, 상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하는 제 3 단계를 포함함.
4. 발명의 중요한 용도
본 발명은 자바 트랜잭션 서비스(JTS)의 상태객체 제거 등에 이용됨.

Description

객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법{Method for removing state object of java transaction servie using object transaction service coordinator}
본 발명은 객체 트랜잭션 처리를 지원하는 트랜잭션 서비스 분야에 관한 것으로서, 특히 객체 트랜잭션 서비스(OTS) 조정자(Coordinator)를 이용한 자바 트랜잭션 서비스(JTS)의 상태객체 제거 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체에 관한 것이다.
종래의 트랜잭션 처리 응용은 주로 프로시쥬얼 형태로 작성되어 왔으며, 분산 트랜잭션 처리를 위해서 주로 클라이언트-서버 모델을 따르고 있다. 트랜잭션 처리 성능 향상 및 클라이언트-서버 모델의 지원을 위해서 범용 업무에서는 일반적으로 트랜잭션 처리 모니터를 도입, 적용해 오고 있다. 그러나, 이와 같은 환경에서 기존의 트랜잭션 처리 응용들은 소프트웨어의 재사용이 어렵고, 트랜잭션 처리 모니터에 의존도가 높아 플랫폼 변경 및 다른 트랜잭션 처리 모니터와 연동이 어려운 단점이 있다.
트랜잭션 처리 응용의 패러다임이 프로시쥬얼 형태에서 객체지향 형태로 바뀌면서 기존의 트랜잭션 처리 모니터에 대응하는 시스템으로 OTS나 JTS를 사용할 수 있고, JTS는 하부에 OTS를 이용하여 제공될 수 있다. 객체 트랜잭션을 반복 실행하는 응용들은 완료된 객체 트랜잭션들에 대한 상태 객체들이 JTS에 누적되어 존재하게 되므로 메모리의 부족현상을 초래할 수 있는 문제점이 있고, 자바 언어의 특성상 응용에서 자바 객체들이 사용하는 메모리를 직접 관리할 수가 없기 때문에객체 트랜잭션 종료시 JTS의 상태 객체들을 제거할 필요가 있다.
정리해 보면, 프로시쥬얼 형태로 작성된 종래의 트랜잭션 처리 응용들은 프로그램의 재사용이 나쁘기 때문에 트랜잭션 처리 응용의 작성 패러다임이 프로시쥬얼 형태에서 객체지향 형태로 바뀌고 있다. 트랜잭션을 처리하는 객체지향 형태의 응용들은 OTS나 JTS를 이용할 수 있는데, 하부에 종래의 OTS를 사용하여 JTS를 제공하는 시스템의 경우, JTS에는 객체 트랜잭션 처리를 위해 생성된 다수의 트랜잭션 상태 객체들이 JTS 내부에 존재할 수 있고, 트랜잭션을 반복 실행하는 응용들은 완료된 객체 트랜잭션들에 대한 상태 객체들이 JTS에 누적되어 존재하게 되므로 메모리의 부족현상을 초래하는 문제점이 있었다.
본 발명은, 상기한 바와 같은 문제점을 해결하기 위하여 제안된 것으로, 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스(JTS)에 상태제거기를 구비하여, 객체 트랜잭션의 종료시 상태제거기를 통해 메모리에 존재하는 트랜잭션 상태 객체들을 제거함으로써, 메모리 부족 현상을 해소하기 위한 자바 트랜잭션 서비스(JTS)의 상태객체 제거 방법 및 상기 방법을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공하는데 그 목적이 있다.
도 1 은 본 발명이 적용되는 자바-객체 트랜잭션 서비스 시스템의 구성 예시도.
도 2 는 본 발명에 따른 객체 트랜잭션 종료시 객체 트랜재션에 대한 자바 트랜잭션 서비스(JTS)의 트랜잭션 상태관리자를 제거하기 위하여 상태제거기를 구비하는 과정을 나타낸 일실시예 흐름도.
도 3 은 본 발명에 따른 객체 트랜잭션 서비스(OTS)의 조정자가 객체 트랜잭션 종료후 동기화를 실행함으로써 상태제거기가 구동되는 과정을 나타낸 일실시예 흐름도.
* 도면의 주요 부분에 대한 부호의 설명
10 : 트랜잭션 처리 응용부(AP) 20 : 자원관리자(RM)
30 : 객체 트랜잭션 서비스부(OTS) 40 : 자바 트랜잭션 서비스부(JTS)
상기 목적을 달성하기 위한 본 발명은, 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스의 상태객체 제거 방법에 있어서, 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시에, 상기 자바 트랜잭션 서비스(JTS)에 상태제거기와 상태제거기 어댑터를 구비하고, 상기 상태제거기를 등록한 상기 상태제거기 어댑터를 동기 객체로 객체 트랜잭션 서비스(OTS)의 조정자에 등록하는 제 1 단계; 트랜잭션의 종료 단계에서, 상기 조정자가 승인 프로토콜 처리를 완료한 다음, 등록된 동기 객체들에게 완료후 동기화를 요청하여 동기 객체가 완료후 동기화를 실행하도록, 동기 객체로 등록된 상기 상태제거기 어댑터를 구동시키는 제 2 단계; 및 상기 상태제거기 어댑터가 상기 상태제거기를 구동시켜, 상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하는 제 3 단계를 포함하여 이루어진 것을 특징으로 한다.
그리고, 본 발명은 프로세서를 구비한 자바-객체 트랜잭션 서비스 시스템에, 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시에, 상기 자바 트랜잭션 서비스(JTS)에 상태제거기와 상태제거기 어댑터를 구비하고, 상기 상태제거기를 등록한 상기 상태제거기 어댑터를 동기 객체로 객체 트랜잭션 서비스(OTS)의 조정자에 등록하는 제 1 기능; 트랜잭션의 종료 단계에서, 상기 조정자가 승인 프로토콜 처리를 완료한 다음, 등록된 동기 객체들에게 완료후 동기화를 요청하여 동기 객체가 완료후 동기화를 실행하도록, 동기 객체로 등록된 상기 상태제거기 어댑터를 구동시키는 제 2 기능; 및 상기 상태제거기 어댑터가 상기 상태제거기를 구동시켜, 상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하는 제 3 기능을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체를 제공한다.
객체 트랜잭션 서비스(OTS)를 사용하여 자바 트랜잭션 서비스(JTS)를 제공하고자 할 때, JTS에는 객체 트랜잭션 처리를 위해 생성된 다수의 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들이 존재할 수가 있다. 트랜잭션을 반복 실행하는 응용들은 완료된 객체 트랜잭션들에 대한 상태 객체들이 JTS에 누적되어 존재하게 되므로 메모리의 부족현상을 초래하는 문제점이 있다.
자바 언어의 특성상 응용에서 자바 객체들이 사용하는 메모리를 직접 관리할 수가 없기 때문에, 상기 문제점을 해결하기 위해서는 JTS 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시 JTS에 상태제거기와 상태제거기 어댑터를 구비하여, 상태제거기를 등록한 상태제거기 어댑터를 동기(Synchronization) 객체로 OTS의 조정자(Coordinator)에 등록하고, 트랜잭션의 종료 단계에서 OTS의 조정자(Coordinator)가 2단계 승인 프로토콜 처리를 완료한 다음 조정자(Coordinator)에 등록된 동기(Synchronization) 객체들에게 완료후 동기화(after_completion)를 요청하여, 동기(Synchronization) 객체가 완료후 동기화를 실행하도록 함으로써, 동기(Synchronization) 객체로 조정자(Coordinator)에 등록된 상태제거기 어댑터가 상태제거기를 구동시켜 JTS 트랜잭션 관리자가 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하도록 한다.
상술한 목적, 특징들 및 장점은 첨부된 도면과 관련한 다음의 상세한 설명을통하여 보다 분명해 질 것이다. 이하, 첨부된 도면을 참조하여 본 발명에 따른 바람직한 일실시예를 상세히 설명한다.
도 1 은 본 발명이 적용되는 자바-객체 트랜잭션 서비스 시스템의 구성 예시도로서, 도면에서 "10"은 트랜잭션 처리 응용부(AP), "20"은 자원관리자(RM), "30"은 객체 트랜잭션 서비스부(OTS), 그리고 "40"은 자바 트랜잭션 서비스부(JTS)를 각각 나타낸다.
자바 트랜잭션 서비스부(JTS)(40)에는 객체 트랜잭션 처리를 위해 생성된 다수의 트랜잭션 상태관리자 객체들을 제거할 수 있도록 상태제거기(SC)(45)와 상태제거기 어댑터(SCA)(44)가 구비된다.
도 1에 도시된 바와 같이, 자바-객체 트랜잭션 서비스 시스템은, 객체 트랜잭션 서비스를 제공하는 객체 트랜잭션 서비스부(OTS)(30), 자바 트랜잭션 서비스를 제공하는 자바 트랜잭션 서비스부(JTS)(40), 자원관리자(RM)(20)와 객체 트랜잭션 처리 응용부(AP)(10)로 구성된다.
자원관리자(RM)(20)는 XAResource(21) 객체를 제공한다.
객체 트랜잭션 서비스부(OTS)(30)는 수행중인 객체 트랜잭션에 대하여 제어(Control)(31)와 조정자(Coordinator)(32) 객체를 제공한다.
자바 트랜잭션 서비스부(JTS)(40)는 트랜잭션 관리자(TM)(41), 트랜잭션 구현 객체(TR)(42), 트랜잭션 상태관리자(TSM)(43)를 구비하여, 트랜잭션 처리 응용부(AP)(10)의 객체 트랜잭션 처리를 위한 서비스를 제공하고, 상태제거기(SC)(45)와, 상태제거기 어댑터(SCA)(44)를 트랜잭션 상태 관리자(TSM)(43)에 구비하여, 트랜잭션의 2단계 승인 프로토콜 처리후 객체 트랜잭션 완료 단계에서 조정자(Coordinator)(32)가 상태제거기 어댑터(SCA)(44)를 구동시킴으로써, 상태제거기(SC)(45)가 자바 트랜잭션 서비스부(JTS)(40)의 트랜잭션 상태 관리자(TSM)(43) 및 트랜잭션 상태 관리자(TSM)(43)가 관리하는 상태 객체들을 제거한다.
자원관리자(RM)(20)와 자바 트랜잭션 서비스부(JTS)(40)를 이용하여 작성된 트랜잭션 처리 응용부(AP)(10)는 객체 트랜잭션을 처리하는 응용 소프트웨어로서, 초기화 과정에서 자원관리자(RM)(20)의 XAResource(21)와 자바 트랜잭션 서비스부(JTS)(40)의 트랜잭션 관리자(TM)(41) 객체의 레퍼런스를 얻고, 트랜잭션 관리자(TM)(41)에게 트랜잭션 시작을 요청한다.
트랜잭션 시작을 요청받은 트랜잭션 관리자(TM)(41)는 객체 트랜잭션 서비스부(OTS)(30)를 연결하여, 객체 트랜잭션 서비스부(OTS)(30)로 하여금 객체 트랜잭션에 대한 제어(Control)(31)와 조정자(Coordinator)(32) 객체를 생성하도록 하고, 제어(Control)(31) 객체 레퍼런스를 반환받아 보관함으로써 트랜잭션 시작을 완료한다.
트랜잭션 시작을 완료한 상태에서, 트랜잭션 처리 응용부(AP)(10)는 트랜잭션 관리자(TM)(41)에게 트랜잭션 구현 객체(TR)(42)의 생성을 요청하고 트랜잭션 구현 객체(TR)(42) 레퍼런스를 반환받아, 트랜잭션 구현 객체(TR)(42)에게 자원관리자(RM)(20)에서 얻은 XAResource(21)의 등록 및 등록 취소를 요청할 수 있다.
트랜잭션 구현 객체(TR)(42)는 트랜잭션 처리 응용부(AP)(10)의XAResource(21) 등록 요청시에 상태제거기(SC)(45)를 구비한 상태제거기 어댑터(SCA)(44)를 조정자(Coordinator)(32)에 등록한다. 이에 대한 보다 상세한 설명은 하기의 도 2에서 후술하기로 한다.
XAResource(21)의 등록후, 트랜잭션 처리 응용부(AP)(10)는 응용에서 정의한 트랜잭션 연산을 수행한 다음 XAResource(21)의 등록 취소를 하고, 트랜잭션 관리자(TM)(41)에게 객체 트랜잭션의 종료를 요청한다.
트랜잭션 관리자(TM)(41)가 트랜잭션 처리 응용부(AP)(10)의 객체 트랜잭션 종료 요청을 받아 객체 트랜잭션 서비스부(OTS)(30)에게 객체 트랜잭션 종료를 요청하면, 객체 트랜잭션 서비스부(OTS)(30)의 조정자(Coordinator)(32)는 객체 트랜잭션에 참여한 참여자들에게 트랜잭션의 2단계 승인 처리(1단계 prepare, 2단계 commit)를 지시하여 2단계 승인 처리를 완료토록 하고, 2단계 승인처리 완료시 상태제거기 어댑터(SCA)(44)가 제공하는 완료후 동기화(after_completion)를 시작시켜 상태제거를 수행(하기의 도 3 참조)함으로써 객체 트랜잭션의 종료를 완료한다.
도 2 는 본 발명에 따른 객체 트랜잭션 종료시 객체 트랜재션에 대한 자바 트랜잭션 서비스(JTS)의 트랜잭션 상태관리자를 제거하기 위하여 상태제거기를 구비하는 과정을 나타낸 일실시예 흐름도로서, 트랜잭션 구현 객체(TR)(42)가 트랜잭션 처리 응용부(AP)(10)로부터 XAResource(21)의 등록을 요청받아 처리할 때, 상태제거기(SC)(45)가 등록된 상태제거기 어댑터(SCA)(44)를 조정자(Coordinator)(32)에 등록하는 절차를 나타낸다.
먼저, 트랜잭션 구현 객체(TR)(42)가 XAResource(21)의 등록을요청받으면(201), 트랜잭션 구현 객체(TR)(42)의 트랜잭션 상태관리자(TSM)(43)가 트랜잭션 관리자(TM)(41)에 등록되었는지를 확인한다(202).
확인 결과, 트랜잭션 상태관리자(TSM)(43)가 트랜잭션 관리자(TM)(41)에 등록되어 있지 않으면, 트랜잭션 상태관리자(TSM)(43)를 생성하여 트랜잭션 관리자(TM)(41)에 등록한다(203).
이후, 트랜잭션 상태관리자(TSM)(43) 등록후, 트랜잭션 관리자(TM)(41)는 상태제거기(SC)(45)를 생성하여 트랜잭션 상태관리자(TSM)(43) 객체 레퍼런스를 상태제거기(SC)(45)에 저장하고(204), 트랜잭션 구현 객체(TR)(42)의 트랜잭션 상태관리자(TSM)(43)에 상태제거기(SC)(45)의 등록을 요청한다(205).
다음으로, 상태제거기(SC)(45)의 등록을 요청받은 트랜잭션 구현 객체(TR)(42)의 트랜잭션 상태관리자(TSM)(43)는 상태제거기 어댑터(SCA)(44)가 자신에게 등록되어 있는지를 검사한다(206).
검사 결과, 상태제거기 어댑터(SCA)(44)가 트랜잭션 상태관리자(TSM)(43)에 등록되어 있지 않으면, 트랜잭션 상태관리자(TSM)(43)는 상태제거기 어댑터(SCA)(44)를 생성하여 상태제거기 어댑터(SCA)(45) 객체 레퍼런스를 트랜잭션 상태관리자(TSM)(43)에 등록하고(207), 상태제거기(SC)(45) 객체 레퍼런스를 상태제거기 어댑터(SCA)(44)에 등록한 다음(208), 객체 트랜잭션 서비스부(OTS)(30)의 조정자(Coordinator)(32)에 상태제거기 어댑터(SCA)(44)를 등록함으로써(209) 조정자(Coordinator)(32)에 상태제거기(SC)(45)의 등록을 완료하고 트랜잭션 구현 객체(TR)(42)의 XAResource(21) 등록처리를 계속한다.
트랜잭션 구현 객체(TR)(42)에 XAResource(21) 등록을 완료하면, 트랜잭션 처리 응용부(AP)(10)는 응용에서 정의한 트랜잭션 연산을 수행한 다음, 트랜잭션 구현 객체(TR)(42)에 XAResource(21)의 등록 취소를 요청하고, 등록 취소를 완료한 다음 트랜잭션 관리자(TM)(41)에게 객체 트랜잭션의 종료를 요청한다.
객체 트랜잭션의 종료를 요청받은 트랜잭션 관리자(TM)(41)는 객체 트랜잭션 서비스부(OTS)(30)에게 트랜잭션 종료를 요청하고, 객체 트랜잭션 종료를 요청받은 객체 트랜잭션 서비스부(OTS)(30)는 조정자(Coordinator)(32)에게 2단계 승인 프로토콜 처리(1단계 prepare, 2단계 commit)를 지시한다.
2단계 승인 프로토콜 처리를 지시받은 조정자(Coordinator)(32)는 조정자(Coordinator)(32)에 등록된 참여자들에게 1단계 prepare와 2단계 commit를 지시하여 2단계 승인 프로토콜 처리를 완료한다.
2단계 승인 프로토콜 처리가 완료된 상태에서, 조정자(Coordinator)(32)는 조정자(Coordinator)(32)에 등록된 상태제거기 어댑터(SCA)(44)에게 트랜잭션 종료후 동기화(after_completion)를 요청한다.
도 3 은 본 발명에 따른 객체 트랜잭션 서비스(OTS)의 조정자가 객체 트랜잭션 종료후 동기화를 실행함으로써 상태제거기가 구동되는 과정을 나타낸 일실시예 흐름도로서, 조정자(Coordinator)(32)의 트랜잭션 종료후 동기화(after_completion) 요청을 처리함으로써 트랜잭션 상태관리자(TSM)(43) 및 트랜잭션 상태관리자(TSM)(43)가 관리하는 다른 객체들을 제거하는 절차를 나타낸다.
먼저, 자바 트랜잭션 서비스부(JTS)(40)의 상태제거기 어댑터(SCA)(44)가 조정자(Coordinator)(32)의 트랜잭션 종료후 동기화 요청을 수신한다(301).
이후, 조정자(Coordinator)(32)의 트랜잭션 종료후 동기화 요청을 수신한 상태제거기 어댑터(SCA)(44)는 상태제거기(SC)(45)에게 트랜잭션 종료후 동기화 실행을 지시한다(302).
다음으로, 동기화 실행을 지시받은 상태제거기(SC)(45)는 트랜잭션 상태관리자(TSM)(43)에게 객체 제거를 지시한다(303).
이어서, 객체 제거를 지시받은 트랜잭션 상태관리자(TSM)(43)는 자신이 관리하는 객체들을 제거하고 트랜잭션 관리자(TM)(41)에 등록된 트랜잭션 상태 관리자(TSM)(43)의 제거를 트랜잭션 관리자(TM)(41)에게 요청한다(304).
마지막으로, 트랜잭션 상태관리자(TSM)(43)의 제거를 요청받은 트랜잭션 관리자(TM)(41)는 트랜잭션 상태관리자(TSM)(43)를 제거함으로써(305), 객체 트랜잭션의 종료를 완료한다.
이상에서와 같이, 객체 트랜잭션 서비스(OTS)를 사용하여 자바 트랜잭션 서비스(JTS)를 제공하는 객체 트랜잭션 서비스 시스템에 있어서, 응용이 트랜잭션을 반복 실행할 때 객체 트랜잭션 처리를 위해 생성된 다수의 트랜잭션 상태관리자 객체들이 자바 트랜잭션 서비스(JTS)에 누적되어 존재할 수가 있기 때문에 종래에는 메모리의 부족현상을 초래하는 문제점이 있었으나, 본 발명으로 인하여 상태제거기와 상태제거기 어댑터를 자바 트랜잭션 서비스(JTS)에 구비될 수 있는 방법이 제시되고, 객체 트랜잭션의 종료 단계에서 객체 트랜잭션 서비스(OTS)의조정자(Coordinator)가 2단계 승인 프로토콜 처리를 완료한 다음 조정자(Coordinator)에 등록된 동기(Synchronization) 객체들에게 완료후 동기화를 요청하면, 상태제거기 어댑터(SCA)에 구비된 상태제거기(SC)가 구동되어 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자(TM)에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 다른 객체들을 제거함으로써 상기 문제점을 해결하고, 객체 트랜잭션 응용에서 트랜잭션의 반복 수행을 가능토록 하고 있다.
상술한 바와 같은 본 발명의 방법은 프로그램으로 구현되어 컴퓨터로 읽을 수 있는 기록매체(씨디롬, 램, 롬, 플로피 디스크, 하드 디스크, 광자기 디스크 등)에 저장될 수 있다.
이상에서 설명한 본 발명은 전술한 실시예 및 첨부된 도면에 의해 한정되는 것이 아니고, 본 발명의 기술적 사상을 벗어나지 않는 범위내에서 여러 가지 치환, 변형 및 변경이 가능하다는 것이 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 있어 명백할 것이다.
상기한 바와 같은 본 발명은, 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스(JTS)의 메모리 부족 현상을 해소하고, 객체 트랜잭션의 반복 수행이 가능한 효과가 있다.

Claims (6)

  1. 자바-객체 트랜잭션 서비스 시스템에서 자바 트랜잭션 서비스의 상태객체 제거 방법에 있어서,
    자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시에, 상기 자바 트랜잭션 서비스(JTS)에 상태제거기와 상태제거기 어댑터를 구비하고, 상기 상태제거기를 등록한 상기 상태제거기 어댑터를 동기 객체로 객체 트랜잭션 서비스(OTS)의 조정자에 등록하는 제 1 단계;
    트랜잭션의 종료 단계에서, 상기 조정자가 승인 프로토콜 처리를 완료한 다음, 등록된 동기 객체들에게 완료후 동기화를 요청하여 동기 객체가 완료후 동기화를 실행하도록, 동기 객체로 등록된 상기 상태제거기 어댑터를 구동시키는 제 2 단계; 및
    상기 상태제거기 어댑터가 상기 상태제거기를 구동시켜, 상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하는 제 3 단계
    를 포함하는 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법.
  2. 제 1 항에 있어서,
    상기 제 1 단계는,
    상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 구현 객체(TR)가 트랜잭션 처리 응용부(AP)로부터 자원 등록을 요청받아 처리할 때, 상기 상태제거기를 상기 상태제거기 어댑터에 등록하여 상기 상태제거기 어댑터를 상기 객체 트랜잭션 서비스의 조정부에 등록하는 것을 특징으로 하는 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법.
  3. 제 1 항에 있어서,
    상기 제 1 단계는,
    상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 구현 객체(TR)가 트랜잭션 처리 응용부(AP)의 자원 등록 요청시에, 트랜잭션 구현 객체(TR)의 트랜잭션 상태관리자(TSM)가 트랜잭션 관리자(TM)에 등록되어 있는지를 확인하는 제 4 단계;
    상기 제 4 단계의 확인 결과, 등록되어 있지 않으면, 상기 트랜잭션 상태관리자(TSM)를 생성하여 상기 트랜잭션 관리자(TM)에 등록하는 제 5 단계;
    상기 트랜잭션 관리자(TM)가 상기 상태제거기(SC)를 생성하여 트랜잭션 상태관리자(TSM) 객체 레퍼런스를 상기 상태제거기(SC)에 저장하고, 상기 트랜잭션 구현 객체(TR)의 트랜잭션 상태관리자(TSM)에 상기 상태제거기(SC)의 등록을 요청하는 제 6 단계;
    상기 트랜잭션 구현 객체(TR)의 트랜잭션 상태관리자(TSM)가 상기 상태제거기 어댑터(SCA)가 자신에게 등록되어 있는지를 검사하는 제 7 단계; 및
    상기 제 7 단계의 검사 결과, 등록되어 있지 않으면, 상기 트랜잭션 상태관리자(TSM)가 상기 상태제거기 어댑터(SCA)를 생성하여 상기 상태제거기 어댑터(SCA)를 상기 트랜잭션 상태관리자(TSM)에 등록하고, 상태제거기(SC) 객체 레퍼런스를 상기 상태제거기 어댑터(SCA)에 등록한 다음, 상기 객체 트랜잭션 서비스부(OTS)의 조정자(Coordinator)에 상기 상태제거기 어댑터(SCA)를 등록하는 제 8 단계
    를 포함하는 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법.
  4. 제 1 항 내지 제 3 항 중 어느 한 항에 있어서,
    상기 제 2 단계는,
    상기 트랜잭션 처리 응용부(AP)의 트랜잭션 종료를 처리하는 트랜잭션의 종료 단계에서 상기 조정자가 트랜잭션 종료후 동기화(after_completion)를 상기 상태제거기 어댑터(SCA)에 요청하는 것을 특징으로 하는 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법.
  5. 제 4 항에 있어서,
    상기 제 3 단계는,
    상기 자바 트랜잭션 서비스(JTS)의 상기 상태제거기 어댑터(SCA)가 상기 조정자(Coordinator)의 트랜잭션 종료후 동기화 요청을 수신하면, 상기 상태제거기(SC)에게 트랜잭션 종료후 동기화 실행을 지시하는 제 9 단계;
    동기화 실행을 지시받은 상기 상태제거기(SC)가 상기 트랜잭션 상태관리자(TSM)에게 객체 제거를 지시하는 제 10 단계;
    객체 제거를 지시받은 상기 트랜잭션 상태관리자(TSM)가 자신이 관리하는 객체들을 제거하고 상기 트랜잭션 관리자(TM)에 등록된 상기 트랜잭션 상태 관리자(TSM)의 제거를 상기 트랜잭션 관리자(TM)에게 요청하는 제 11 단계; 및
    상기 트랜잭션 상태관리자(TSM)의 제거를 요청받은 상기 트랜잭션 관리자(TM)가 상기 트랜잭션 상태관리자(TSM)(43)를 제거하는 제 12 단계
    를 포함하는 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션 서비스의 상태객체 제거 방법.
  6. 프로세서를 구비한 자바-객체 트랜잭션 서비스 시스템에,
    자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자가 트랜잭션 상태관리자 객체 생성시에, 상기 자바 트랜잭션 서비스(JTS)에 상태제거기와 상태제거기 어댑터를 구비하고, 상기 상태제거기를 등록한 상기 상태제거기 어댑터를 동기 객체로 객체 트랜잭션 서비스(OTS)의 조정자에 등록하는 제 1 기능;
    트랜잭션의 종료 단계에서, 상기 조정자가 승인 프로토콜 처리를 완료한 다음, 등록된 동기 객체들에게 완료후 동기화를 요청하여 동기 객체가 완료후 동기화를 실행하도록, 동기 객체로 등록된 상기 상태제거기 어댑터를 구동시키는 제 2 기능; 및
    상기 상태제거기 어댑터가 상기 상태제거기를 구동시켜, 상기 자바 트랜잭션 서비스(JTS)의 트랜잭션 관리자에 등록된 트랜잭션 상태관리자 및 트랜잭션 상태관리자가 관리하는 객체들을 제거하는 제 3 기능
    을 실현시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020010047559A 2001-08-07 2001-08-07 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법 KR20030013200A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020010047559A KR20030013200A (ko) 2001-08-07 2001-08-07 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법
US10/125,457 US6842756B2 (en) 2001-08-07 2002-04-19 Method for eliminating state objects in java transaction service using object transaction service coordinator

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010047559A KR20030013200A (ko) 2001-08-07 2001-08-07 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법

Publications (1)

Publication Number Publication Date
KR20030013200A true KR20030013200A (ko) 2003-02-14

Family

ID=19712960

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010047559A KR20030013200A (ko) 2001-08-07 2001-08-07 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법

Country Status (2)

Country Link
US (1) US6842756B2 (ko)
KR (1) KR20030013200A (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8224793B2 (en) 2005-07-01 2012-07-17 International Business Machines Corporation Registration in a de-coupled environment
US8606877B2 (en) 2008-05-01 2013-12-10 Tibco Software Inc. Java virtual machine having integrated transaction management system
US8407723B2 (en) * 2009-10-08 2013-03-26 Tibco Software, Inc. JAVA virtual machine having integrated transaction management system and facility to query managed objects
EP3137024B1 (en) * 2014-04-28 2021-01-13 King Abdullah University Of Science And Technology Smart thermal patch for adaptive thermotherapy

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR0175456B1 (ko) 1995-12-22 1999-04-01 양승택 분산된 객체접속정보 관리 시스템 및 그 객체접속정보의 분산화 방법
US5870742A (en) 1996-03-20 1999-02-09 International Business Machines Corporation Method and apparatus for enabling persistent attributes in an object oriented environment
KR100223016B1 (ko) 1996-12-11 1999-10-01 정선종 분산 객체 시스템에서의 송신 및 수신 중계자에 의한 통신 장치 및 그 통신 방법
KR100233238B1 (ko) 1996-12-21 1999-12-01 정선종 분산 트랜잭션 시스템에서 다중 쓰레드를 이용한 2단계 승인통신방법
US5920725A (en) * 1997-07-02 1999-07-06 Adaptivity Inc. Run-time object-synthesis and transparent client/server updating of distributed objects using a meta server of all object descriptors
GB2335518A (en) 1998-03-18 1999-09-22 Ibm Triggering event causes creation of Coordinator transaction state object
US6928458B2 (en) * 2001-06-27 2005-08-09 Microsoft Corporation System and method for translating synchronization information between two networks based on different synchronization protocols

Also Published As

Publication number Publication date
US20030033309A1 (en) 2003-02-13
US6842756B2 (en) 2005-01-11

Similar Documents

Publication Publication Date Title
US6832238B1 (en) Local transaction management
JP4464525B2 (ja) 作業負荷によって管理されるクライアント/サーバ・データ処理システムにおける集中アフィニティ維持装置および方法
CN108124003A (zh) 网络管理设备连接处理方法、装置及系统
CN104731943B (zh) 一种服务器和数据处理方法
JPH07281974A (ja) ネットワーク内のコンピュータ間でデータを交換するための通信システム
WO2017041649A1 (zh) 一种应用部署方法及设备
CN101262498A (zh) 一种分布式调用消息的方法和装置
WO2022141727A1 (zh) 一种基于云上成本的资源部署系统及方法
CN104765603A (zh) 应用程序构建方法及装置
JP3409308B2 (ja) クライアント/サーバ・コンピューティング・システム及びサーバ処理方法
KR20030013200A (ko) 객체 트랜잭션 서비스 조정자를 이용한 자바 트랜잭션서비스의 상태객체 제거방법
EP0926590A1 (en) Component-based control structure for wireless communication
EP1351142A2 (en) Apparatus and method of lazy connection transaction enlistment
US9386010B2 (en) Abstracted authenticated client connectivity application programming interface (API)
JP3574030B2 (ja) コンピューティング装置、操作方法およびプログラム記憶装置
US6237018B1 (en) Apparatus method and computer program product for client/server computing with improved transactional interface
JP2001056767A (ja) トランザクションサービス同期インターフェースを使用して、内部状態のクリーンアップを実施するための方法
JPH11265362A (ja) クライアント処理装置、サ―バ処理装置、クライアント処理方法、サ―バ処理方法及びコンピュ―タ・プログラム製品
CN104270453A (zh) 一种多级服务器间数据通信方法及服务器
CN103873276A (zh) 一种j2ee架构下业务的处理方法及系统
CN112732407B (zh) 一种实现多cpu架构的容器全生命周期管理方法
CN109389271A (zh) 应用性能管理方法及系统
KR20020053516A (ko) 자바 객체 트랜잭션 서비스 시스템에서의 자원관리자 등록장치 및 그 방법
CN112363856A (zh) 一种基于dds实现深度学习框架与应用程序互操作的方法
CN110798512A (zh) 一种集中式数据推送方法、智能终端及存储介质

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid