KR20010004513A - Transaction measurement table in the switching system - Google Patents

Transaction measurement table in the switching system Download PDF

Info

Publication number
KR20010004513A
KR20010004513A KR1019990025201A KR19990025201A KR20010004513A KR 20010004513 A KR20010004513 A KR 20010004513A KR 1019990025201 A KR1019990025201 A KR 1019990025201A KR 19990025201 A KR19990025201 A KR 19990025201A KR 20010004513 A KR20010004513 A KR 20010004513A
Authority
KR
South Korea
Prior art keywords
transaction
task
message
state
allocation
Prior art date
Application number
KR1019990025201A
Other languages
Korean (ko)
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 KR1019990025201A priority Critical patent/KR20010004513A/en
Publication of KR20010004513A publication Critical patent/KR20010004513A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M3/00Automatic or semi-automatic exchanges
    • H04M3/22Arrangements for supervision, monitoring or testing
    • H04M3/24Arrangements for supervision, monitoring or testing with provision for checking the normal operation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2203/00Aspects of automatic or semi-automatic exchanges
    • H04M2203/55Aspects of automatic or semi-automatic exchanges related to network data storage and management
    • H04M2203/558Databases

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

PURPOSE: A transaction managing table of a message processing task in a switching system is provided to make a transaction behavior table, a transaction state managing table, and a transaction ID for allocating table manage transactions according to IDs, and to divide each transaction into many transaction states and sub transactions and to manage the divided transactions with transaction state units, so that the message processing task may simultaneously process many messages without time delay. CONSTITUTION: A transaction behavior table is composed of a transaction type definition part and a transaction state/operation definition part. The transaction type definition part stores transaction type IDs, transaction message IDs, a first transaction state number, and an operation function routing indicator relating to the first transaction state, according to transaction types, respectively. The transaction state/operation definition part stores transaction state numbers, acknowledge message IDs, time-out message IDs, an operation function routine indicator and a time-out operation function routine indicator, according to transaction states, respectively. A transaction state managing table is allocated by corresponding to inputted transaction messages. The inputted transaction messages are composed of transaction IDs which are transaction identifiers, transaction type IDs corresponding to the transaction messages, present transaction state numbers, timer IDs and transaction state number indicators. The transaction IDs are recorded in each entry of a transaction ID allocating table. Values of a transaction ID canceling index and a transaction ID generating index are controlled in a mathematical formula5(Transaction ID release index value = transaction ID release index value ++ %(K+1) : K which is larger than 1 is the entry number of transaction ID allocation table) and a formula6(Transaction ID allocation index value = transaction ID allocation index value ++ %(K+1) : K which is larger than 1 is the entry number of transaction ID allocation table), respectively, after performing transaction ID canceling/allocating operations of a task in the transaction ID allocating table.

Description

교환 시스템에서 메시지 처리 태스크의 트랜잭션 관리 테이블{TRANSACTION MEASUREMENT TABLE IN THE SWITCHING SYSTEM}Transaction management table for message processing tasks in a switching system. {TRANSACTION MEASUREMENT TABLE IN THE SWITCHING SYSTEM}

본 발명은 메시지 드리븐 시스템에서 메시지 처리 방법에 관한 것으로, 특히 교환 시스템에서의 복수개의 메시지 처리 방법에 관한 것이다.The present invention relates to a message processing method in a message driven system, and more particularly, to a plurality of message processing methods in a switching system.

교환 시스템은 복수개의 동작 프로세서로 구성되며 프로세서간 메시지를 주고 받으면서 일을 처리한다. 그리고 교환 시스템에서 태스크(Task)가 메시지를 처리하는데 있어서, 외부 태스크와의 메시지 교환을 통한 상호작용이 빈번해지지면 시스템내의 부하를 일정 수준으로 제한하여야 하는 필요가 생긴다.The exchange system is composed of a plurality of operating processors and handles work by exchanging messages between processors. And when a task processes a message in an exchange system, if the interaction through the message exchange with an external task becomes frequent, there is a need to limit the load in the system to a certain level.

일반적으로 메시지 처리방법은 각 메시지마다 태스크를 할당하여 처리하는 방법과 하나의 메시지를 하나의 태스크에서 시퀀셜하게 처리하는 방법이 있다.Generally, there are two methods of processing a message by assigning a task to each message and processing a message sequentially in one task.

그런데 상기 첫 번째 방법은 메시지가 도착할 때마다 태스크가 생성되는 방법으로서, 메시지 폭주시 태스크 과다 생성으로 인하여 시스템에 부하를 줄 우려가 있다. 그리고 상기 두 번째 방법은 하나의 메시지 처리가 완전히 끝나야 다음 메시지를 처리할 수가 있으므로, 메시지 블럭킹이 발생하는 경우에 효율이 떨어지는 문제점이 있다. 또한 상기 두 번째 방법에서 하나의 메시지를 처리하기 위하여 다른 태스크에 또 다른 메시지를 보내야 하는 일이 빈번하게 발생하는 경우에는 그 응답 메시지를 기다리는 동안 태스크는 다른 메시지를 처리할 수가 없게 된다. 이러한 문제점은 태스크의 메시지 처리 효율을 크게 감소 시킨다.However, the first method is a method in which a task is generated each time a message arrives, and there is a concern that the system may be overloaded due to excessive task generation when the message is congested. In addition, the second method can process the next message only after one message processing is completely completed. Therefore, there is a problem that the efficiency is inferior when the message blocking occurs. In addition, in the second method, when it is frequently necessary to send another message to another task to process one message, the task cannot process another message while waiting for the response message. This problem greatly reduces the task's message processing efficiency.

따라서 본 발명의 목적은 교환 시스템에서 단일의 태스크가 복수개의 메시지에 대해서 블록킹 없이 동시에 처리할 수가 있는 트랜잭션 관리 테이블을 제공함에 있다.Accordingly, an object of the present invention is to provide a transaction management table in which a single task can simultaneously process a plurality of messages without blocking in an exchange system.

본 발명의 다른 목적은 교환 시스템에서 트랜잭션을 ID별로 관리하며 각 트랜잭션을 복수개의 트랜잭션 상태와 서브 트랜잭션으로 나누어, 트랜잭션 상태 단위로 관리하는 트랜잭션 동작 테이블, 트랜잭션 상태 관리 테이블 및 트랜잭션 ID 할당 테이블을 제공함에 있다.Another object of the present invention is to provide a transaction operation table, a transaction state management table, and a transaction ID allocation table for managing transactions by ID in a switching system and dividing each transaction into a plurality of transaction states and sub-transactions. have.

상기와 같은 목적들을 달성하기 위하여 본 발명은 교환 시스템에서 메시지 처리 태스크의 트랜잭션 관리 테이블이, 트랜잭션 타입별로 트랜잭션 타입 아이-디, 트랜잭션 메시지 아이-디, 첫 번째 트랜잭션 상태번호 및 상기 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자를 각각 저장하는 트랜잭션 타입 정의 부분과, 상기 각 트랜잭션 타입이 구성하는 해당 개수의 트랜잭션 상태별로 트랜잭션 상태번호, 응답 메시지 아이-디, 타임-아웃 메시지 아이-디, 동작함수 루틴 지시자 및 타임-아웃 동작함수 루틴 지시자를 각각 저장하는 트랜잭션 상태 및 동작 정의 부분으로 구성되는 트랜잭션 동작 테이블과, 트랜잭션 구분자인 트랜잭션 아이-디, 해당 트랜잭션 메시지에 대응하는 트랜잭션 타입 아이-디, 현재 트랜잭션 상태번호, 타이머 아이디 및 트랜잭션 상태번호 지시자로 이루어져 입력되는 복수개의 트랜잭션 메시지에 대응하여 할당되는 트랜잭션 상태 관리 테이블로 이루어짐을 특징으로 한다.In order to achieve the above objects, the present invention provides a transaction management table of a message processing task in a switching system according to transaction type ID, transaction message ID, first transaction status number and first transaction status. A transaction type definition portion for storing the operation function routine indicators for each function, a transaction status number, a response message ID, a time-out message ID, and an operation function routine indicator for each transaction number of the transaction type. And a transaction action table consisting of a transaction state and an action definition portion respectively storing a time-out action function routine indicator, a transaction identifier, a transaction identifier, a transaction type ID corresponding to the corresponding transaction message, and a current transaction state number. , Timer IDs, and tracks Characterized a transaction made of an assignment status management table in correspondence with the plurality of transaction messages to be input consists of a transaction number status indicator.

도 1은 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 개념을 도시하는 구성도.1 is a block diagram showing the concept of a transaction operation table according to an embodiment of the present invention.

도 2는 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분을 도시한 도면.2 illustrates a transaction type definition portion of a transaction action table according to an embodiment of the present invention.

도 3은 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 트랜잭션 상태 및 동작 정의 부분을 도시한 도면.3 illustrates a transaction state and action definition portion of a transaction action table in accordance with an embodiment of the present invention.

도 4는 본 발명의 실시예에 따른 트랜잭션 상태 관리 테이블을 도시한 도면.4 illustrates a transaction state management table in accordance with an embodiment of the present invention.

도 5는 본 발명의 실시예에 따른 트랜잭션 ID 할당 테이블을 도시한 도면.5 is a diagram illustrating a transaction ID allocation table according to an embodiment of the present invention.

이하 본 발명의 바람직한 실시예를 첨부된 도면을 참조하여 상세히 설명한다. 하기 설명에서는 구체적인 특정(特定) 사항들이 나타나고 있는데, 이는 본 발명의 보다 전반적인 이해를 돕기 위해서 제공된 것일 뿐 이러한 특정 사항들 없이도 본 발명이 실시될 수 있음은 이 기술 분야에서 통상의 지식을 가진 자에게는 자명하다 할 것이다. 그리고 본 발명을 설명함에 있어, 관련된 공지 기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Specific details appear in the following description, which is provided to aid a more general understanding of the present invention, and it should be understood by those skilled in the art that the present invention may be practiced without these specific details. It will be self explanatory. In the following description of the present invention, if it is determined that a detailed description of a related known function or configuration may unnecessarily obscure the subject matter of the present invention, the detailed description thereof will be omitted.

본 발명은 교환 시스템에서 단일의 태스크를 이용해 복수개의 메시지를 처리할 수 있도록 하여 태스크의 생성으로 인한 시스템의 부하가 커지는 것을 방지한다. 그리고 본 발명은 단일의 태스크에서 동시에 복수개의 메시지를 블록킹 없이 처리할 수 있도록 한다.The present invention enables a switching system to process a plurality of messages using a single task, thereby preventing the system load from being generated due to task generation. In addition, the present invention allows a plurality of messages to be processed simultaneously without blocking in a single task.

즉, 본 발명의 실시예에 따른 트랜잭션 동작 테이블, 트랜잭션 상태관리 테이블 및 트랜잭션 ID 할당 테이블은 트랜잭션을 ID별로 관리하며 각 트랜잭션을 복수개의 트랜잭션 상태와 서브 트랜잭션으로 나누고, 트랜잭션 상태 단위로 나누어서 관리한다. 이로인해 해당 태스크는 복수개의 메시지들 즉, 트랜잭션 메시지, 응답 메시지 및 Time-out 메시지에 대해 시간지연 없이 동시에 처리할 수가 있다.That is, the transaction operation table, the transaction state management table, and the transaction ID allocation table according to an embodiment of the present invention manage transactions by ID, divide each transaction into a plurality of transaction states and sub-transactions, and manage them by dividing them into transaction state units. This allows the task to process multiple messages simultaneously, with no time delay, for transaction messages, response messages, and time-out messages.

우선 본 발명의 실시예에 따른 용어를 정의한다.First, terms according to embodiments of the present invention are defined.

트랜잭션(Transaction)은 태스크가 메시지 요구를 받아서 메시지를 처리한 후 응답 메시지를 보내기 까지의 일련의 과정 이라고 한다. 이때, 상기 태스크로 입력되는 메시지를 트랜잭션 메시지라고 한다. 그리고 상기 트랜잭션 메시지에 따라서 태스크가 일을 처리하는 동작이 달라지는데, 상기 태스크의 일 처리 동작의 종류는 트랜잭션 타입(Type)에 의해 구분된다. 즉, 태스크는 동일한 트랜잭션 타입으로 정의된 메시지를 수신하면, 태스크는 동일한 방법으로 메시지를 처리하게 된다. 그러나 동일한 트랜잭션 타입이라 할지라도, 서로 다른 메시지의 처리 결과값은 서로 다를 수가 있다. 즉, 태스크는 트랜잭션 타입에 정의된 트랜잭션 수행요구 메시지를 수신하면 해당 트랜잭션을 생성하며, 각 트랜잭션은 트랜잭션 ID에 의해 구분된다. 한편, 태스크는 하나의 트랜잭션을 수행하면서 또 다른 태스크에 트랜잭션 수행요구 메시지를 송신하여 새로운 트랜잭션을 발생시킬 수가 있다. 상기 발생된 트랜잭션은 상기 트랜잭션 수행요구 메시지를 송신한 태스크의 관점에서 서브 트랜잭션(Sub Transaction)이라 하며, 상기 트랜잭션 수행요구 메시지를 서브 트랜잭션 메시지라 한다. 그리고 하나의 트랜잭션은 여러 개의 서브 트랜잭션으로 구성되며 동일한 트랜잭션 ID를 가지고 수행된다. 그리고 태스크가 트랜잭션을 수행할 때, 서브 트랜잭션을 발생시키기 전까지 태스크가 일을 처리하는 단위를 트랜잭션 상태라 한다. 그리고 트랜잭션은 여러개의 트랜잭션 상태로 구성되며, 트랜잭션 상태간의 이동은 태스크가 서브 트랜잭션 메시지를 또 다른 태스크로 송신하여 서브 트랜잭션을 발생시키고 상기 또 다른 태스크로부터 상기 서브 트랜잭션에 대응하는 응답 메시지를 수신함으로써 이루어 진다. 그리고 트랜잭션 상태간에 공유되는 정보, 환경정보 및 이전 상태의 메시지 전송 파라미터 그리고 결과값등과 같은 과거정보는 트랜잭션 상태정보 지시자에 의해 저장된다.A transaction is a series of processes from when a task receives a message request to processing a message and then sending a response message. At this time, the message input to the task is called a transaction message. In addition, an operation of processing a task varies according to the transaction message, and a type of one processing operation of the task is classified by a transaction type. That is, when a task receives a message defined with the same transaction type, the task processes the message in the same way. However, even with the same transaction type, different message processing results may be different. That is, when the task receives the transaction execution request message defined in the transaction type, the task creates the corresponding transaction, and each transaction is identified by the transaction ID. Meanwhile, a task may generate a new transaction by sending a transaction execution request message to another task while executing one transaction. The generated transaction is called a sub transaction in terms of a task that sent the transaction execution request message, and the transaction execution request message is called a sub transaction message. One transaction consists of several subtransactions and is executed with the same transaction ID. When a task executes a transaction, the unit that the task processes until the sub transaction occurs is called a transaction state. The transaction is composed of several transaction states, and the movement between the transaction states is performed by a task sending a sub transaction message to another task to generate a sub transaction and receiving a response message corresponding to the sub transaction from the another task. Lose. Historical information such as information shared between transaction states, environmental information, message transfer parameters of previous states, and result values are stored by the transaction state information indicator.

도 1은 본 발명의 실시예에 따른 트랜잭션 동작 테이블(Transaction Behavior Table)의 개념을 도시하는 구성도이다.1 is a block diagram illustrating the concept of a transaction behavior table according to an embodiment of the present invention.

트랜잭션 동작 테이블은 트랜잭션 Type 정의 부분(110)과 트랜잭션 상태 및 동작 정의 부분(120)으로 구성된다. 그리고 트랜잭션 Type 정의 부분(110)은 제1트랜잭션 Type(111) 내지 제N트랜잭션 Type(11N)별로 트랜잭션 Type 정의에 대한 정보를 저장한다. 그리고 도시된 바와 같이, 제1트랜잭션 Type(111)은 제1트랜잭션 상태 TS#1(121), 제3트랜잭션 상태 TS#3(123) 및 제5트랜잭션 상태 TS#5(125)의 동작과정으로 이루어진다. 또한 제2트랜잭션 Type(112)는 단일의 제4트랜잭션 상태 TS#4(124)의 동작과정으로 이루어지며, 제N트랜잭션 Type(11N)는 제1트랜잭션 상태 TS#1(121), 제2트랜잭션 상태 TS#2(122), 제3트랜잭션 상태 TS#3(123) 및 제4트랜잭션 상태 TS#4(124)의 동작과정으로 이루어진다.The transaction action table is composed of a transaction type definition part 110 and a transaction state and action definition part 120. The transaction type definition part 110 stores information on the transaction type definition for each of the first transaction types 111 through N-th transaction type 11N. As illustrated, the first transaction type 111 is an operation process of the first transaction state TS # 1 121, the third transaction state TS # 3 123, and the fifth transaction state TS # 5 125. Is done. In addition, the second transaction type 112 is an operation process of a single fourth transaction state TS # 4 124, and the Nth transaction type 11N is the first transaction state TS # 1 121, the second transaction. An operation process of the state TS # 2 122, the third transaction state TS # 3 123, and the fourth transaction state TS # 4 124 is performed.

도 2는 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분을 도시한 도면이다. 이하 상기 도 1을 참조하여 설명한다.2 is a diagram illustrating a transaction type definition portion of a transaction operation table according to an embodiment of the present invention. A description with reference to FIG. 1 is as follows.

트랜잭션 타입 정의 부분에는 각 트랜잭션 Type 별로 트랜잭션 Type ID와 트리거링 메시지 ID와 첫 번째 트랜잭션 상태 및 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자가 구비된다. 즉, 제1트랜잭션 Type(111)는 제1트랜잭션 Type ID(210)와 트리거링(Triggering) 메시지 ID(212)와 첫 번째 트랜잭션 상태번호 (214)와 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자(216)가 구비된다. 그리고 마찬가지로 제2트랜잭션 Type(112) 내지 제N트랜잭션 Type(11N)도 각각 해당 트랜잭션 Type ID, 트리거링 메시지 ID, 첫 번째 트랜잭션 상태 번호 및 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자를 구비한다.The transaction type definition part includes a transaction type ID, a triggering message ID, and an operation function routine indicator for the first transaction state and the first transaction state for each transaction type. That is, the first transaction type 111 may include a first transaction type ID 210, a triggering message ID 212, a first transaction state number 214, and an operation function routine indicator 216 for the first transaction state. ) Is provided. Similarly, the second transaction types 112 through N-th transaction type 11N also have operation function routine indicators for the corresponding transaction type ID, the triggering message ID, the first transaction status number, and the first transaction status.

도 3은 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 트랜잭션 상태 및 동작 정의 부분을 도시한다. 이하 상기 도 1 내지 도 2를 참조하여 설명한다.3 illustrates a transaction state and action definition portion of a transaction action table according to an embodiment of the present invention. Hereinafter, a description will be given with reference to FIGS. 1 and 2.

트랜잭션 상태 및 동작 정의 부분에서, 트랜잭션 상태별 관리를 위하여 각 트랜잭션 상태를 활성화 시키는 메시지가 두 개가 존재한다. 그 중의 하나는 다른 태스크의 서브 트랜잭션 수행에 의해 해당 태스크로 입력되는 응답메시지이고, 다른 하나는 상기 해당 태스크가 서브 트랜잭션을 수행하라는 메시지를 송신한 후 기설정된 시간내에 응답 메시지를 수신하지 못하는 경우에 해당 엔티티(Entity)로부터 발생되는 Time-out 메시지이다. 그리고 상기 두 메시지에는 해당 트랜잭션 ID가 구비된다. 그리고 본 발명의 실시예에 따라 트랜잭션 상태 및 동작 정의 부분에는 각 트랜잭션 상태별로 상기한 두 가지의 트랜잭션 상태 활성 메시지에 따라 각각 수행되는 동작함수 루틴 지시자와 Time-out 동작함수 루틴 지시자가 구비된다. 즉, 본 발명의 실시예에 따른 해당 태스크는 입력되는 메시지의 ID가 상기 응답 메시지에 해당하면, 트랜잭션 상태별로 설정되어 있는 동작함수 루틴 지시자에 의한 함수를 수행한다. 그리고 상기 해당 태스크는 입력되는 메시지의 ID가 Time-out 메시지에 해당하면 Time-out 동작함수 루틴 지시자에 의한 함수를 수행한다.In the transaction state and operation definition, there are two messages that activate each transaction state for transaction state management. One of them is a response message input to the task by performing a sub-transaction of another task, and the other is a response message not received within a preset time after the task transmits a message to perform the sub-transaction. Time-out message originating from the entity. The two messages are provided with a corresponding transaction ID. According to an embodiment of the present invention, the transaction state and operation definition portion includes an operation function routine indicator and a time-out operation function routine indicator that are respectively performed according to the two transaction state activation messages for each transaction state. That is, the task according to an embodiment of the present invention performs a function by the operation function routine indicator set for each transaction state when the ID of the input message corresponds to the response message. If the ID of the input message corresponds to a time-out message, the task performs a function by a time-out operation function routine indicator.

상기 도 3은 상기 도 1의 트랜잭션 상태 및 동작 정의 부분의 일부를 도시한다. 상기 도 1에서 상술한 바와 같이 트랜잭션 상태 및 동작 정의 부분의 각 트랜잭션 Type 는 해당 개수의 트랜잭션 상태의 동작과정으로 이루어지며, 각 트랜잭션 상태별로, 즉 상기 도 3에서 볼 때 제1트랜잭션 상태 TS#1(121)별로 트랜잭션 상태번호 #1(310), 응답 메시지 ID #1(312), Time-out 메시지 ID #1(314), 동작함수 루틴 지시자 #1(316) 및 Time-out 동작함수 루틴 지시자 #1(318)를 구비한다. 그리고 마찬가지로 트랜잭션 상태 및 동작 정의 부분에서 상기 각 트랜잭션 Type는 제3트랜잭션 상태 TS#3(123)별로 트랜잭션 상태번호 #3(330), 응답 메시지 ID #3(332), Time-out 메시지 ID #3(334), 동작함수 루틴 지시자 #3(336) 및 Time-out 동작함수 루틴 지시자 #3(338)를 구비한다.3 illustrates a portion of the transaction state and operation definition portion of FIG. 1. As described above with reference to FIG. 1, each transaction type of a transaction state and an operation definition portion is composed of an operation of a corresponding number of transaction states, and for each transaction state, that is, the first transaction state TS # 1 in FIG. 3. Transaction status number # 1 (310), response message ID # 1 (312), time-out message ID # 1 (314), operation function routine indicator # 1 (316), and time-out operation function routine indicator by (121). # 1 318. Similarly, in the transaction state and operation definition part, each transaction type is a transaction state number # 3 (330), response message ID # 3 (332), and time-out message ID # 3 for each third transaction state TS # 3 (123). 334, operation function routine indicator # 3 336 and time-out operation function routine indicator # 3 338.

그리고 본 발명의 실시예에 따른 해당 태스크는 입력되는 메시지의 ID가 응답 메시지 ID #1(312)에 해당하면 동작함수 루틴 지시자 #1(316)에 의한 해당 함수를 수행한다. 그리고 상기 해당 함수는 다음의 트랜잭션 상태 즉, 트랜잭션 상태번호 #3(330)를 결정하고 해당 태스크로 서브 트랜잭션 메시지를 전송한 뒤에 종료된다. 이때, 상기 해당 태스크는 후술되는 트랜잭션 ID를 상기 서브 트랜잭션 메시지에 포함시킬 수가 있다. 그리고 상기 해당 태스크는 새롭게 입력되는 메시지의 ID가 응답 메시지 ID #3(332)에 해당하면 동작함수 루틴 지시자 #3(336)에 의한 해당 함수를 수행한다. 그리고 상기 해당 함수는 다음의 트랜잭션 상태를 결정하고 해당 태스크로 서브 트랜잭션 메시지를 전송한 뒤에 종료된다.If the ID of the input message corresponds to the response message ID # 1 312, the task performs the corresponding function by the operation function routine indicator # 1 316. The function terminates after determining a next transaction state, that is, transaction state number # 3 330, and transmitting a sub transaction message to the task. In this case, the task may include a transaction ID to be described later in the sub-transaction message. If the ID of the newly input message corresponds to the response message ID # 3 (332), the task performs the corresponding function by the operation function routine indicator # 3 (336). The function terminates after determining the next transaction state and transmitting a sub transaction message to the task.

상기 도 3의 설명에서, 본 발명의 실시예에 따른 트랜잭션 동작 테이블의 트랜잭션 상태 및 동작 정의 부분은 해당 트랜잭션을 복수개의 서브 트랜잭션과 상태단위로 나우어 관리하여, 해당 태스크는 복수개의 응답 메시지와 Time-out 메시지에 대하여 지연없이 동시에 처리가 가능하다.In the description of FIG. 3, the transaction state and operation definition portion of the transaction action table according to the embodiment of the present invention manages the transaction by dividing the transaction into a plurality of sub-transactions and state units, and the task includes a plurality of response messages and a time. -out Messages can be processed simultaneously without delay.

도 4는 본 발명의 실시예에 따른 트랜잭션 상태 관리 테이블을 도시한다. 이하 상기 도 1 내지 도 3을 참조하여 설명한다.4 illustrates a transaction state management table according to an embodiment of the present invention. Hereinafter, a description will be given with reference to FIGS. 1 to 3.

상기 트랜잭션 상태 관리 테이블에서 관리하는 트랜잭션 ID의 개수를 제한하는 엔트리 번호 M은 태스크가 동시에 처리할 수가 있는 트랜잭션의 개수가 된다.The entry number M for limiting the number of transaction IDs managed in the transaction state management table is the number of transactions that can be processed simultaneously by the task.

그리고 트랜잭션 ID는 트랜잭션 생성을 요구하는 트리거링 메시지 또는 트랜잭션 메시지가 태스크로 입력될 때마다 할당되는 트랜잭션 구분자이다. 즉, 본 발명의 실시예에 따른 해당 태스크는 입력되는 메시지의 ID가 트랜잭션 생성을 요구하는 메시지이면 또는 상기 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지 ID 이면, 상기 해당 태스크는 상기 메시지에게 새로운 트랜잭션 ID를 할당하고 트랜잭션 상태 관리 테이블의 해당 엔트리 번호(450)에 상기 새로 할당된 트랜잭션 ID, 트랜잭션 Type ID, 현재 트랜잭션 상태번호, 타이머 ID 및 트랜잭션 상태정보 지시자(418)를 저장한다. 이때, 상기 트랜잭션 Type ID 및 현재 트랜잭션 상태번호는 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분을 참조한다. 이때의 상기 현재 트랜잭션 상태번호는 해당 트랜잭션 Type의 첫 번째 트랜잭션 상태의 번호가 된다.The transaction ID is a transaction delimiter that is allocated whenever a triggering message or a transaction message that requires transaction creation is entered into the task. That is, the task in accordance with an embodiment of the present invention, if the ID of the input message is a message requesting the creation of a transaction, or if the ID of the message is a triggering message ID defined in the transaction type definition of the transaction action table of FIG. The task assigns a new transaction ID to the message and assigns the newly assigned transaction ID, transaction type ID, current transaction status number, timer ID, and transaction status information indicator to the corresponding entry number 450 in the transaction status management table. 418). In this case, the transaction type ID and the current transaction state number refer to the transaction type definition of the transaction operation table of FIG. 2. At this time, the current transaction state number becomes the number of the first transaction state of the corresponding transaction type.

그리고 상기 해당 태스크는 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분을 참조하여, 상기 해당 트랜잭션 Type의 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자에 따른 동작함수를 수행한다. 그리고 상기 해당 함수는 다음의 트랜잭션 상태번호를 결정하고 해당 태스크로 서브 트랜잭션 메시지를 전송한 뒤에 종료된다. 이때, 상기 해당 태스크는 상기 트랜잭션 상태 관리 테이블의 해당 엔트리 번호의 현재 트랜잭션 상태번호를 상기 결정된 트랜잭션 상태번호로 갱신한다.The task performs an operation function according to an operation function routine indicator for the first transaction state of the transaction type by referring to the transaction type definition of the transaction operation table of FIG. 2. The function terminates after determining the next transaction status number and sending a sub transaction message to the task. At this time, the task updates the current transaction state number of the corresponding entry number in the transaction state management table to the determined transaction state number.

그리고 상기 해당 태스크는 새롭게 입력되는 메시지의 ID가 다른 태스크의 서브 트랜잭션 수행에 의하여 전송되는 해당 응답 메시지인 경우, 상기 해당 태스크는 상기 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지가 아니므로 상기 메시지에 구비되는 트랜잭션 ID를 찾는다. 그리고 상기 해당 태스크는 상기 도 4의 트랜잭션 상태 관리 테이블에서 상기 찾아낸 트랜잭션 ID를 참조하여 현재 트랜잭션 상태번호와 트랜잭션 Type을 확인한다. 그리고 상기 해당 태스크는 상기 도 3의 트랜잭션 상태 및 동작 정의 부분에서 상기 새로히 입력된 응답 메시지의 ID를 확인한다. 그리고 상기 해당 태스크는 상기 현재 트랜잭션 상태번호별의 해당 동작함수 루틴 지시자에 의한 동작함수를 호출한다.And when the ID of a newly input message is a corresponding response message transmitted by performing a sub transaction of another task, the corresponding task has an ID of the message in a transaction type definition portion of the transaction operation table of FIG. 2. Since it is not a defined triggering message, the transaction ID included in the message is found. The task checks the current transaction status number and transaction type with reference to the found transaction ID in the transaction state management table of FIG. 4. The task checks the ID of the newly input response message in the transaction state and operation definition of FIG. 3. The task calls the operation function by the operation function routine indicator of the current transaction state number.

한편, 본 발명의 실시예에 따른 해당 태스크는 새롭게 입력되는 메시지의 ID가 해당 엔티티로부터 입력되는 Time-out 메시지인 경우, 상기 해당 태스크는 상기 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지가 아니므로 상기 메시지에 구비되는 트랜잭션 ID를 찾는다. 그리고 상기 해당 태스크는 상기 도 4의 트랜잭션 상태 관리 테이블에서 상기 찾아낸 트랜잭션 ID를 참조하여 현재 트랜잭션 상태번호와 트랜잭션 Type를 확인한다. 그리고 상기 해당 태스크는 상기 도 3의 트랜잭션 상태 및 동작 정의 부분에서 상기 새로히 입력된 Time-out 메시지의 ID를 확인한다. 그리고 상기 해당 태스크는 상기 현재 트랜잭션 상태번호별의 해당 Time-out 동작함수 루틴 지시자에 의한 동작함수를 호출한다.Meanwhile, in the corresponding task according to the embodiment of the present invention, when the ID of a newly input message is a time-out message input from the corresponding entity, the corresponding task may be a transaction type of the transaction operation table of FIG. 2. Since it is not a triggering message defined in the definition part, the transaction ID included in the message is found. The task checks the current transaction status number and transaction type with reference to the found transaction ID in the transaction state management table of FIG. 4. The task checks the ID of the newly input time-out message in the transaction state and operation definition of FIG. 3. The task calls the operation function by the corresponding time-out operation function routine indicator for each current transaction state number.

그런데 상기한 바와 같이 상기 Time-out 메시지는 상기 해당 태스크가 서브 트랜잭션 메시지를 송신한 후 기설정된 시간내에 응답 메시지를 수신하지 못하는 경우에 발생되는 메시지이다. 즉, 상기 해당 태스크는 상기 서브 트랜잭션 메시지를 송신하면 각 트랜잭션 ID 별로 타이머(Timer)를 동작시키며, 기설정된 시간내에 해당 응답 메시지가 수신되면 상기 타이머를 초기화 해야 한다. 따라서 상기 해당 태스크는 상기 도 4의 트랜잭션 상태 관리 테이블에서 트랜잭션 ID 별로 타이머 ID를 관리한다.As described above, the time-out message is a message generated when the corresponding task does not receive a response message within a preset time after transmitting the sub transaction message. That is, when the corresponding task transmits the sub-transaction message, a timer operates for each transaction ID. When the corresponding response message is received within a preset time, the timer should be initialized. Accordingly, the task manages a timer ID for each transaction ID in the transaction state management table of FIG. 4.

그리고 상기 해당 태스크는 트랜잭션 ID 별로 트랜잭션 상태정보 지시자를 관리한다. 상기 트랜잭션 상태정보 지시자는 해당 트랜잭션의 상태간에 공유되는 정보, 환경정보 및 그전 상태의 메시지 전송 파라미터 그리고 결과값등과 같은 과거정보를 저장한다.The task manages a transaction status information indicator for each transaction ID. The transaction state information indicator stores historical information such as information shared between state of a corresponding transaction, environment information, message transmission parameter of previous state, and result value.

다른 한편, 태스크가 처리하고 있는 트랜잭션은 각각 그 처리 시간이 모두 다르다. 이로인해 시간이 지남에 따라 상기 도 4의 트랜잭션 상태 관리 테이블의 각각의 트랜잭션 ID 엔트리는 현재 처리중인 트랜잭션 엔트리와 이미 종료된 트랜잭션의 엔트리가 랜덤하게 섞여 있게 된다. 따라서 태스크는 새로운 트랜잭션을 처리하기 위해서 상기 트랜잭션 상태 관리 테이블의 엔트리 중에서 사용되고 있지 않는 엔트리를 찾아서 해당 트랜잭션 수행요구 메시지에 할당해 주어야 한다.On the other hand, each transaction has a different processing time. As a result of this, each transaction ID entry in the transaction state management table of FIG. 4 randomly mixes a transaction entry that is currently being processed and an entry of an already terminated transaction. Therefore, in order to process a new transaction, the task must find an unused entry among the entries in the transaction state management table and assign it to the transaction execution request message.

상기 도 4의 설명에서, 본 발명의 실시예에 따른 트랜잭션 상태 관리 테이블은 복수개의 트랜잭션 메시지에 대하여 트랜잭션 ID 별로 관리하여, 해당 태스크는 복수개의 트랜잭션 생성요구 메시지를 지연없이 동시에 처리할 수가 있다는 것을 알 수가 있다.In the description of FIG. 4, the transaction state management table according to the embodiment of the present invention manages a plurality of transaction messages for each transaction ID, so that the task can simultaneously process a plurality of transaction generation request messages without delay. There is a number.

도 5는 본 발명의 실시예에 따른 트랜잭션 ID 할당 테이블을 도시한다. 이하 상기 도 1 내지 도 4를 참조하여 설명한다.5 illustrates a transaction ID allocation table according to an embodiment of the present invention. Hereinafter, a description will be given with reference to FIGS. 1 to 4.

각 트랜잭션 ID 할당 테이블의 엔트리에는 트랜잭션 ID 가 구비된다. 그리고 상기 도 5의 K는 상기 도 4의 트랜잭션 관리 테이블의 엔트리 개수 M 보다 1 만큼 큰 값이다.(K=M+1) 그리고 트랜잭션 ID 해제 인덱스(510)와 트랜잭션 ID 할당 인덱스(520)는 태스크의 트랜잭션 ID 해제 및 할당 동작후에 각각 하기 〈수학식 1〉 및 〈수학식 2〉와 같이 그 값이 조정되게 된다.Each transaction ID assignment table entry is provided with a transaction ID. K in FIG. 5 is one greater than the number M of entries in the transaction management table of FIG. 4 (K = M + 1). The transaction ID release index 510 and the transaction ID allocation index 520 are tasks. After the transaction ID releasing and allocating operations, the values are adjusted as in Equations 1 and 2, respectively.

트랜잭션 ID 해제 인덱스값=트랜잭션 ID 해제 인덱스값++ % (K+1)Transaction ID Release Index Value = Transaction ID Release Index Value ++% (K + 1)

여기서 상기 트랜잭션 ID 해제 인덱스값은 상기 태스크가 처리가 끝난 해당 트랜잭션 ID를 반환할 때 해제하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID release index value means an index position of a transaction ID allocation table in which a transaction ID to be released is recorded when the task returns a corresponding transaction ID, where K is an entry in the transaction ID allocation table. As a number, the number is one greater than the number of entries in the transaction management table.

트랜잭션 ID 할당 인덱스값=트랜잭션 ID 할당 인덱스값++ % (K+1)Transaction ID Allocation Index Value = Transaction ID Allocation Index Value ++% (K + 1)

여기서 상기 트랜잭션 ID 할당 인덱스값은 상기 태스크가 새로운 태스크의 수행을 위하여 상기 트랜잭션 관리 테이블에 해당 트랜잭션 ID를 할당할 때 할당하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID allocation index value means an index position of a transaction ID allocation table in which a transaction ID to be allocated is recorded when the task allocates a corresponding transaction ID to the transaction management table to perform a new task. Is the number of entries in the transaction ID allocation table, which is one greater than the number of entries in the transaction management table.

그리고 상기 트랜잭션 ID 할당 테이블의 각 엔트리는 원형 리스트(Circular List)로 구성될 수가 있다. 상기의 경우 트랜잭션 ID 해제 인덱스(510)와 트랜잭션 ID 할당 인덱스(520)는 그 값이 K 만큼 증가한 뒤에는 다시 '0'이 된다. 그리고 트랜잭션 ID 해제 인덱스(510)와 트랜잭션 ID 할당 인덱스(520)의 값이 동일한 경우는 트랜잭션 ID가 모두 할당된 경우이다. 이때에는 트랜잭션 ID 해제 인덱스(510)의 값이 다시 증가하기 전까지는 태스크는 더 이상 트랜잭션 ID를 할당 할 수가 없다.Each entry of the transaction ID allocation table may be configured as a circular list. In this case, the transaction ID release index 510 and the transaction ID allocation index 520 become '0' after the value is increased by K. When the transaction ID release index 510 and the transaction ID allocation index 520 have the same value, all of the transaction IDs are allocated. At this time, the task can no longer allocate the transaction ID until the value of the transaction ID release index 510 is increased again.

상기 도 5의 설명에서 본 발명의 실시예에 따른 트랜잭션 ID 할당 테이블은 새로운 트랜잭션 ID를 할당 하는 경우, 사용되고 있지 않는 트랜잭션 ID 엔트리를 검색하는 시간을 최소화 할 수가 있다는 것을 알 수가 있다.In the description of FIG. 5, it can be seen that the transaction ID allocation table according to the embodiment of the present invention can minimize the time for searching for an unused transaction ID entry when allocating a new transaction ID.

다른 한편, 본 발명의 실시예에 따라 태스크로 입력되는 트랜잭션 메시지는 태스크에 새로운 일을 요구하는 것으로서, 상기 태스크는 상기 트랜잭션 메시지에 대하여 새로운 트랜잭션 ID를 할당하게 된다. 그리고 상기 태스크로 입력되는 응답 메시지는 또 다른 태스크의 서브 트랜잭션 수행에 의해 발생한 것으로서, 이전에 상기 태스크가 할당한 트랜잭션 ID가 포함되게 된다. 또한 상기 태스크로 입력되는 Time-out 메시지는 상기 태스크가 서브 트랜잭션 메시지를 해당 태스크로 송신한 후 기설정된 시간내에 응답 메시지를 수신하지 못하는 경우에 해당 엔티티로부터 발생되는 것으로서, 이전에 상기 태스크가 할당한 트랜잭션 ID가 포함되게 된다.On the other hand, a transaction message input to a task according to an embodiment of the present invention is a request for a new task to the task, the task is assigned a new transaction ID for the transaction message. The response message inputted to the task is generated by performing a sub transaction of another task, and includes a transaction ID previously assigned by the task. In addition, the time-out message input to the task is generated from a corresponding entity when the task does not receive a response message within a preset time after the sub-transmission message is transmitted to the task, and is previously assigned by the task. The transaction ID will be included.

이하 본 발명의 실시예에 따른 태스크가 상기 세 가지의 메시지가 입력될 때, 상기 메시지에 대하여 처리하는 방법을 상기 도 1 내지 도 5를 참조하여 상술한다.Hereinafter, when a task according to an embodiment of the present invention is input to the three messages, a method of processing the message will be described in detail with reference to FIGS. 1 to 5.

해당 태스크는 입력되는 메시지가 트랜잭션 메시지 인지를 검사한다. 이때, 상기 동작은 상기 해당 태스크가 상기 입력 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지 ID 인지를 확인함으로써 이루어 질 수가 있다. 상기 입력된 메시지가 트랜잭션 메시지 이면, 상기 해당 태스크는 상기 입력 메시지에 대하여 새로운 트랜잭션 ID를 할당한다. 이때, 상기 해당 태스크는 상기 도 5의 트랜잭션 할당 테이블의 트랜잭션 ID 할당 인덱스가 가리키는 트랜잭션 ID를 할당한다. 그리고 상기 해당 태스크는 상기 도 4의 트랜잭션 상태 관리 테이블의 해당 엔트리 번호 또는 인덱스에 상기 새로 할당된 트랜잭션 ID를 저장한다. 그리고 상기 해당 태스크는 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에서 해당 트랜잭션 Type ID 및 첫 번째 트랜잭션 상태번호를 저장한다. 그리고 상기 해당 태스크는 해당하는 타이머 ID와 트랜잭션 상태정보 지시자를 상기 트랜잭션 상태 관리 테이블의 해당 엔트리 번호 또는 인덱스에 저장한다.The task checks whether the incoming message is a transactional message. In this case, the operation may be performed by the corresponding task checking whether the ID of the input message is a triggering message ID defined in the transaction type definition of the transaction operation table of FIG. 2. If the input message is a transaction message, the task assigns a new transaction ID for the input message. In this case, the task allocates a transaction ID indicated by the transaction ID allocation index of the transaction allocation table of FIG. 5. The task stores the newly allocated transaction ID in a corresponding entry number or index of the transaction state management table of FIG. 4. The task stores the transaction type ID and the first transaction state number in the transaction type definition of the transaction operation table of FIG. 2. The task stores a corresponding timer ID and a transaction state information indicator in a corresponding entry number or index of the transaction state management table.

그리고 상기 해당 태스크는 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분을 참조하여, 상기 트랜잭션 상태관리 테이블에 저장된 해당 트랜잭션 Type의 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자에 따른 동작함수를 수행한다. 이때, 상기 해당 함수는 상기 도 3의 트랜잭션 동작 테이블의 트랜잭션 상태 및 동작 정의 부분을 참조하여, 다음의 트랜잭션 상태번호를 결정하고 다른 태스크로 서브 트랜잭션 메시지를 전송한 뒤에 종료된다. 이때, 상기 서브 트랜잭션 메시지에 상기 해당 트랜잭션 ID가 포함될 수가 있다. 그리고 상기 해당 태스크는 상기 도 4의 트랜잭션 상태 관리 테이블의 해당 엔트리 번호의 현재 트랜잭션 상태번호를 상기 결정된 트랜잭션 상태번호로 갱신한다.The task performs an operation function according to the operation function routine indicator for the first transaction state of the transaction type stored in the transaction state management table by referring to the transaction type definition of the transaction operation table of FIG. 2. At this time, the corresponding function ends after referring to the transaction state and operation definition of the transaction action table of FIG. 3, determining the next transaction state number, and transmitting the sub transaction message to another task. In this case, the corresponding transaction ID may be included in the sub transaction message. The task updates the current transaction state number of the entry number of the transaction state management table of FIG. 4 with the determined transaction state number.

그리고 상기 해당 태스크는 상기 해당 서브 트랜잭션 메시지를 송신하면 상기 트랜잭션 상태 관리 테이블의 해당 타이머 ID에 대응하는 타이머를 동작시키고 해당 트랜잭션 상태정보 지시자에 의해, 발생되는 트랜잭션 상태정보를 저장한다. 이때, 상기 트랜잭션 상태정보는 트랜잭션 상태간에 공유되는 정보, 환경정보 및 이전 상태의 메시지 전송 파라미터 그리고 결과값등과 같은 과거정보가 될 수가 있다.When the corresponding task transmits the corresponding sub transaction message, the task operates a timer corresponding to the timer ID of the transaction state management table and stores transaction state information generated by the transaction state information indicator. In this case, the transaction state information may be historical information such as information shared between transaction states, environment information, message transmission parameters of previous states, and result values.

그런데 이때,상기 해당 태스크는 상기 해당 서브 트랜잭션 메시지를 송신하면 상기한 트랜잭션의 첫 번째 트랜잭션 상태에 대한 동작함수를 수행하였으므로, 새롭게 입력되는 메시지에 대한 처리가 가능하게 된다.In this case, when the corresponding task transmits the corresponding sub-transaction message, the task performs an operation function on the first transaction state of the transaction, thereby enabling processing of a newly input message.

한편, 상기 해당 태스크는 입력되는 메시지가 응답 메시지인지를 검사한다. 이때, 상기 동작은 상기 해당 태스크가 상기 입력 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지 ID 인지를 확인하는 동작과, 상기 트리거링 메시지 ID가 아닌 경우에 상기 해당 태스크가 상기 입력 메시지에 구비되는 트랜잭션 ID를 찾는 동작과, 상기 찾아낸 트랜잭션 ID를 참조하여 상기 해당 태스크가 상기 도 4의 트랜잭션 상태 관리 테이블에서 해당 현재 트랜잭션 상태번호와 트랜잭션 타입을 확인하는 동작과, 그리고 상기 해당 태스크가 상기 도 3의 트랜잭션 상태 및 동작 정의 부분에서 상기 입력된 메시지의 ID가 상기 현재 트랜잭션 상태번호별 해당 응답 메시지 ID인지를 확인하는 동작으로 이루어 질 수가 있다. 그리고, 상기 입력된 메시지가 응답 메시지 이면, 상기 해당 태스크는 상기 현재 상태에 해당하는 동작함수를 수행한다.Meanwhile, the task checks whether an input message is a response message. In this case, the operation may be performed by the corresponding task to check whether the ID of the input message is a triggering message ID defined in the transaction type definition of the transaction operation table of FIG. 2, and when the trigger message is not the triggering message ID. The task of finding a transaction ID included in the input message, the task identifying the current transaction status number and a transaction type in the transaction state management table of FIG. 4 with reference to the found transaction ID, and The corresponding task may be performed to determine whether the ID of the input message is a corresponding response message ID according to the current transaction status number in the transaction state and operation definition of FIG. 3. If the input message is a response message, the task performs an operation function corresponding to the current state.

그리고 이때, 상기 해당 태스크는 해당 트랜잭션을 종료하거나 또는 새로운 서브 트랜잭션 메시지를 생성하여 또 다른 태스크로 전송할 수가 있다. 상기 해당 트랜잭션을 종료하는 경우, 상기 해당 태스크는 상기 할당된 트랜잭션 ID를 해제하며, 상기 도 5의 트랜잭션 할당 테이블의 트랜잭션 ID 해제 인덱스를 조정한다.In this case, the corresponding task may terminate the transaction or generate a new sub-transaction message and transmit it to another task. When the corresponding transaction ends, the corresponding task releases the assigned transaction ID and adjusts the transaction ID release index of the transaction allocation table of FIG. 5.

또한 상기 해당 태스크는 입력되는 메시지가 Time-out 메시지인지를 검사한다. 이때, 상기 동작은 상기 해당 태스크가 상기 입력 메시지의 ID가 상기 도 2의 트랜잭션 동작 테이블의 트랜잭션 타입 정의 부분에 정의된 트리거링 메시지 ID 인지를 확인하는 동작과, 상기 트리거링 메시지 ID가 아닌 경우에 상기 해당 태스크가 상기 입력 메시지에 구비되는 트랜잭션 ID를 찾는 동작과, 상기 찾아낸 트랜잭션 ID를 참조하여 상기 해당 태스크가 상기 도 4의 트랜잭션 상태 관리 테이블에서 해당 현재 트랜잭션 상태번호와 트랜잭션 타입을 확인하는 동작과, 그리고 상기 해당 태스크가 상기 도 3의 트랜잭션 상태 및 동작 정의 부분에서 상기 입력된 메시지의 ID가 상기 현재 트랜잭션 상태번호별 해당 Time-out 메시지 ID인지를 확인하는 동작으로 이루어 질 수가 있다. 그리고, 상기 입력된 메시지가 Time-out 메시지 이면, 상기 해당 태스크는 상기 현재 상태에 해당하는 Time-out 동작함수를 수행한다. 그리고 이때, 상기 해당 태스크는 해당 트랜잭션을 종료하거나 또는 서브 트랜잭션 메시지를 다른 태스크로 재전송할 수가 있다. 상기 해당 트랜잭션을 종료하는 경우, 상기 해당 태스크는 상기 할당된 트랜잭션 ID를 해제하며, 상기 도 5의 트랜잭션 할당 테이블의 트랜잭션 ID 해제 인덱스를 조정한다. 그리고 상기 서브 트랜잭션 메시지를 재전송 하는 경우, 상기 트랜잭션 상태정보를 이용한다.In addition, the task checks whether an input message is a time-out message. In this case, the operation may be performed by the corresponding task to check whether the ID of the input message is a triggering message ID defined in the transaction type definition of the transaction operation table of FIG. 2, and when the trigger message is not the triggering message ID. The task of finding a transaction ID included in the input message, the task identifying the current transaction status number and a transaction type in the transaction state management table of FIG. 4 with reference to the found transaction ID, and The corresponding task may be performed to determine whether the ID of the input message is a corresponding time-out message ID for each current transaction status number in the transaction status and operation definition of FIG. 3. If the input message is a time-out message, the task performs a time-out operation function corresponding to the current state. In this case, the task may terminate the transaction or retransmit the sub transaction message to another task. When the corresponding transaction ends, the corresponding task releases the assigned transaction ID and adjusts the transaction ID release index of the transaction allocation table of FIG. 5. When retransmitting the sub transaction message, the transaction state information is used.

그리고 본 발명의 실시예에 따른 해당 태스크의 트랜잭션 ID 반환 동작은 하기와 같다. 즉, 상기 도 5의 트랜잭션 ID 할당 테이블의 트랜잭션 ID 해제 인덱스가 가리키는 엔트리에 해제하고자 하는 트랜잭션 ID를 기록한다. 그리고 상기 트랜잭션 ID 해제 인덱스를 하기 〈수학식 3〉과 같이 조정한다.The transaction ID return operation of the task according to the embodiment of the present invention is as follows. That is, the transaction ID to be released is recorded in the entry indicated by the transaction ID release index of the transaction ID allocation table of FIG. 5. The transaction ID release index is adjusted as in Equation 3 below.

트랜잭션 ID 해제 인덱스값=트랜잭션 ID 해제 인덱스값++ % (K+1)Transaction ID Release Index Value = Transaction ID Release Index Value ++% (K + 1)

여기서 상기 트랜잭션 ID 해제 인덱스값은 상기 태스크가 처리가 끝난 해당 트랜잭션 ID를 반환할 때 해제하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID release index value means an index position of a transaction ID allocation table in which a transaction ID to be released is recorded when the task returns a corresponding transaction ID, where K is an entry in the transaction ID allocation table. As a number, the number is one greater than the number of entries in the transaction management table.

그리고 상기 해당 태스크는 트랜잭션 오버플로우 값이 '1'로 설정이 되어 있다면, 다시 '0'으로 설정하여 트랜잭션 오버플로우를 해제한다.When the transaction overflow value is set to '1', the task is set to '0' again to release the transaction overflow.

그리고 본 발명의 실시예에 따른 해당 태스크의 트랜잭션 ID 할당 동작은 하기와 같다. 즉, 상기 해당 태스크는 입력되는 트랜잭션 메시지에 대하여 상기 도 5의 트랜잭션 ID 할당 테이블의 트랜잭션 ID 할당 인덱스가 가리키는 엔트리의 트랜잭션 ID를 할당한다. 그리고 상기 트랜잭션 ID 할당 인덱스를 하기 〈수학식 4〉와 같이 조정한다.Transaction ID allocation of the task according to an embodiment of the present invention is as follows. That is, the task allocates the transaction ID of the entry indicated by the transaction ID allocation index of the transaction ID allocation table of FIG. 5 to the input transaction message. The transaction ID allocation index is adjusted as shown in Equation 4 below.

트랜잭션 ID 할당 인덱스값=트랜잭션 ID 할당 인덱스값++ % (K+1)Transaction ID Allocation Index Value = Transaction ID Allocation Index Value ++% (K + 1)

여기서 상기 트랜잭션 ID 할당 인덱스값은 상기 태스크가 새로운 태스크의 수행을 위하여 상기 트랜잭션 관리 테이블에 해당 트랜잭션 ID를 할당할 때 할당하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID allocation index value means an index position of a transaction ID allocation table in which a transaction ID to be allocated is recorded when the task allocates a corresponding transaction ID to the transaction management table to perform a new task. Is the number of entries in the transaction ID allocation table, which is one greater than the number of entries in the transaction management table.

그리고 상기 해당 태스크는 트랜잭션 오버플로우가 발생하는지를 검사한다. 상기 검사동작은 상기 트랜잭션 ID 해제 인덱스값과 상기 트랜잭션 ID 할당 인덱스값이 동일한지의 여부를 검사함으로써 이루어 질 수가 있다. 상기 트랜잭션 ID 해제 인덱스값과 상기 트랜잭션 ID 할당 인덱스값이 동일하면, 더 이상 할당한 트랜잭션 ID가 없이 트랜잭션 오버플로우가 발생하였다는 것을 의미하므로 트랜잭션 오버플로우값을 '1'로 셋팅한다.The task then checks whether a transaction overflow occurs. The checking operation may be performed by checking whether the transaction ID release index value and the transaction ID allocation index value are the same. If the transaction ID release index value and the transaction ID allocation index value are the same, it means that a transaction overflow occurs without a transaction ID allocated to the transaction ID.

그리고 상기 해당 태스크는 상기 트랜잭션 오버플로우 값이 '1'로 셋팅되어 있으면, 더 이상 새로운 트랜잭션을 처리하지 않는다. 그리고 상기 해당 태스크는 입력되는 서브 트랜잭션 응답 메시지와 Time-out 메시지를 우선적으로 처리하여 트랜잭션 오버플로우를 해소한다.If the transaction overflow value is set to '1', the task no longer processes a new transaction. In addition, the task preferentially processes the input sub-transaction response message and the time-out message to solve the transaction overflow.

상기 도 1 내지 도 5의 설명에서, 교환 시스템에서 본 발명의 실시예에 따른 트랜잭션 동작 테이블, 트랜잭션 상태관리 테이블 및 트랜잭션 ID 할당 테이블은 트랜잭션을 ID별로 관리하며 각 트랜잭션을 복수개의 트랜잭션 상태와 서브 트랜잭션으로 나누어, 트랜잭션 상태 단위로 관리한다는 것을 알 수가 있다. 이로인해 해당 태스크는 복수개의 메시지들 즉, 트랜잭션 메시지, 응답 메시지 및 Time-out 메시지에 대해 시간지연 없이 동시에 처리할 수가 있다는 것을 알 수가 있다.1 to 5, the transaction operation table, the transaction state management table, and the transaction ID allocation table according to the embodiment of the present invention in the exchange system manage transactions by ID and manage each transaction in a plurality of transaction states and subtransactions. You can see that it manages by transaction state unit. This shows that the task can simultaneously process multiple messages, ie transaction messages, response messages, and time-out messages.

한편 본 발명의 상세한 설명에서는 구체적인 실시예에 관하여 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 안되며 후술하는 발명청구의 범위뿐 만 아니라 이 발명청구의 범위와 균등한 것들에 의해 정해져야 한다.Meanwhile, in the detailed description of the present invention, specific embodiments have been described, but various modifications are possible without departing from the scope of the present invention. Therefore, the scope of the present invention should not be limited to the described embodiments, but should be defined not only by the scope of the following claims, but also by the equivalents of the claims.

상술한 바와 같이 교환 시스템에서 본 발명의 실시예에 따른 트랜잭션 동작 테이블, 트랜잭션 상태관리 테이블 및 트랜잭션 ID 할당 테이블은 트랜잭션을 ID별로 관리하며 각 트랜잭션을 복수개의 트랜잭션 상태와 서브 트랜잭션으로 나누어, 트랜잭션 상태 단위로 관리하여, 이로인해 해당 태스크는 복수개의 메시지들에 대해 시간지연 없이 동시에 처리할 수가 있는 잇점이 있다.As described above, in the exchange system, the transaction operation table, the transaction state management table, and the transaction ID assignment table according to the embodiment of the present invention manage transactions by ID, and divide each transaction into a plurality of transaction states and sub-transactions. This allows the task to process multiple messages simultaneously without time delay.

Claims (1)

교환 시스템에서 메시지 처리 태스크의 트랜잭션 관리 테이블에 있어서,In the transaction management table of the message processing task in a switching system: 트랜잭션 타입별로 트랜잭션 타입 아이-디, 트랜잭션 메시지 아이-디, 첫 번째 트랜잭션 상태번호 및 상기 첫 번째 트랜잭션 상태에 대한 동작함수 루틴 지시자를 각각 저장하는 트랜잭션 타입 정의 부분과, 상기 각 트랜잭션 타입이 구성하는 해당 개수의 트랜잭션 상태별로 트랜잭션 상태번호, 응답 메시지 아이-디, 타임-아웃 메시지 아이-디, 동작함수 루틴 지시자 및 타임-아웃 동작함수 루틴 지시자를 각각 저장하는 트랜잭션 상태 및 동작 정의 부분으로 구성되는 트랜잭션 동작 테이블과,A transaction type definition portion for storing a transaction type ID, a transaction message ID, a first transaction state number, and an operation function routine indicator for the first transaction state for each transaction type, and the corresponding transaction types Transaction action consisting of transaction state and action definition part that stores transaction state number, response message ID, time-out message ID, D, action function routine indicator, and time-out action function routine indicator for each transaction state. Table, 트랜잭션 구분자인 트랜잭션 아이-디, 해당 트랜잭션 메시지에 대응하는 트랜잭션 타입 아이-디, 현재 트랜잭션 상태번호, 타이머 아이디 및 트랜잭션 상태번호 지시자로 이루어져 입력되는 복수개의 트랜잭션 메시지에 대응하여 할당되는 트랜잭션 상태 관리 테이블과,A transaction state management table that is allocated to correspond to a plurality of input transaction messages consisting of a transaction ID, a transaction identifier, a transaction type ID, a current transaction status number, a timer ID, and a transaction status number indicator. , 각 엔트리에 상기 트랜잭션 아이-디가 기록되며 상기 태스크의 트랜잭션 아이-디 해제 및 할당 동작 후에 트랜잭션 아이-디 해제 인덱스와 트랜잭션 아이-디 생성 인덱스가 각각 하기 〈수학식 5〉 및 〈수학식 6〉으로 그 값이 조정되는 트랜잭션 아이-디 할당 테이블로 이루어 짐을 특징으로 하는 트랜잭션 관리 테이블.The transaction ID is recorded in each entry, and after the transaction ID release and allocation operation of the task, the transaction ID release index and the transaction ID creation index are respectively represented by Equations 5 and 6, respectively. A transaction management table, characterized in that it consists of a transaction ID-allocation table whose value is adjusted. 트랜잭션 ID 해제 인덱스값=트랜잭션 ID 해제 인덱스값++ % (K+1)Transaction ID Release Index Value = Transaction ID Release Index Value ++% (K + 1) 여기서 상기 트랜잭션 ID 해제 인덱스값은 상기 태스크가 처리가 끝난 해당 트랜잭션 ID를 반환할 때 해제하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID release index value means an index position of a transaction ID allocation table in which a transaction ID to be released is recorded when the task returns a corresponding transaction ID, where K is an entry in the transaction ID allocation table. As a number, the number is one greater than the number of entries in the transaction management table. 트랜잭션 ID 할당 인덱스값=트랜잭션 ID 할당 인덱스값++ % (K+1)Transaction ID Allocation Index Value = Transaction ID Allocation Index Value ++% (K + 1) 여기서 상기 트랜잭션 ID 할당 인덱스값은 상기 태스크가 새로운 태스크의 수행을 위하여 상기 트랜잭션 관리 테이블에 해당 트랜잭션 ID를 할당할 때 할당하고자 하는 트랜잭션 ID가 기록되는 트랜잭션 ID 할당 테이블의 인덱스 위치를 의미하며, 상기 K는 상기 트랜잭션 ID 할당 테이블의 엔트리 개수로서 상기 트랜잭션 관리 테이블의 엔트리 개수 보다 1 만큼 큰 값이다.Herein, the transaction ID allocation index value means an index position of a transaction ID allocation table in which a transaction ID to be allocated is recorded when the task allocates a corresponding transaction ID to the transaction management table to perform a new task. Is the number of entries in the transaction ID allocation table, which is one greater than the number of entries in the transaction management table.
KR1019990025201A 1999-06-29 1999-06-29 Transaction measurement table in the switching system KR20010004513A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1019990025201A KR20010004513A (en) 1999-06-29 1999-06-29 Transaction measurement table in the switching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019990025201A KR20010004513A (en) 1999-06-29 1999-06-29 Transaction measurement table in the switching system

Publications (1)

Publication Number Publication Date
KR20010004513A true KR20010004513A (en) 2001-01-15

Family

ID=19596776

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019990025201A KR20010004513A (en) 1999-06-29 1999-06-29 Transaction measurement table in the switching system

Country Status (1)

Country Link
KR (1) KR20010004513A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113297222A (en) * 2021-05-25 2021-08-24 北京京东振世信息技术有限公司 Report data acquisition method and device, electronic equipment and storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113297222A (en) * 2021-05-25 2021-08-24 北京京东振世信息技术有限公司 Report data acquisition method and device, electronic equipment and storage medium

Similar Documents

Publication Publication Date Title
EP0891585B1 (en) A method and apparatus for client managed flow control on a limited memory computer system
US6314114B1 (en) Distributed resource management
KR100509794B1 (en) Method of scheduling jobs using database management system for real-time processing
EP0317466B1 (en) Reverse flow control mechanism and method
US20040158637A1 (en) Gated-pull load balancer
JP2001331333A (en) Computer system and method for controlling computer system
US20090013209A1 (en) Apparatus for connection management and the method therefor
US7640549B2 (en) System and method for efficiently exchanging data among processes
JP4833220B2 (en) Method, system, and program for dividing client resources by local authority
US5901334A (en) System for calculating expected length of time in transient queue by a formula in the event items cannot be allocated to the buffer
EP0317481B1 (en) Remote storage management mechanism and method
US20030028640A1 (en) Peer-to-peer distributed mechanism
EP0049521A2 (en) Information processing system
KR20010004513A (en) Transaction measurement table in the switching system
US6912586B1 (en) Apparatus for journaling during software deployment and method therefor
JPH09101902A (en) Job scheduling system
CN114237914A (en) Management scheduling system based on hybrid cloud
US7068604B2 (en) Managing memory resident queues to control resources of the systems using the queues
US10459778B1 (en) Sending messages between threads
CN113452729A (en) Serial number determination method, equipment and storage medium
KR101016036B1 (en) Memory management module and memory management methode
JPH09179834A (en) Scheduling method of parallel system for process
JP3224876B2 (en) Multiplexed communication distributed processing system
JPH02222336A (en) Computer address managing system
JPS63211060A (en) Load distribution control system for multiprocessor system

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