KR100899527B1 - 웹 서비스의 멀티쓰레드 운용 시스템 및 방법 - Google Patents

웹 서비스의 멀티쓰레드 운용 시스템 및 방법 Download PDF

Info

Publication number
KR100899527B1
KR100899527B1 KR1020020035614A KR20020035614A KR100899527B1 KR 100899527 B1 KR100899527 B1 KR 100899527B1 KR 1020020035614 A KR1020020035614 A KR 1020020035614A KR 20020035614 A KR20020035614 A KR 20020035614A KR 100899527 B1 KR100899527 B1 KR 100899527B1
Authority
KR
South Korea
Prior art keywords
thread
request
user request
user
sql script
Prior art date
Application number
KR1020020035614A
Other languages
English (en)
Other versions
KR20040000697A (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 KR1020020035614A priority Critical patent/KR100899527B1/ko
Publication of KR20040000697A publication Critical patent/KR20040000697A/ko
Application granted granted Critical
Publication of KR100899527B1 publication Critical patent/KR100899527B1/ko

Links

Images

Classifications

    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • G06F16/2448Query languages for particular applications; for extensibility, e.g. user defined types

Landscapes

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

Abstract

본 발명은 동시 사용자를 위한 웹 서비스의 멀티쓰레드 운용방법에 관한 것으로서, 더욱 상세히는 사용자로부터 요청이 접수되었는지 여부를 판단하고, 상기 판단단계에서 요청이 접수되었으면 요청 처리 시간별로 분류하여 순번을 부여하고, 상기 분류단계에서 분류된 순번이 빠른것부터 쓰레드 번호를 할당하여 쓰레드를 생성하며, 상기 생성된 쓰레드 번호별로 PL/SQL 스크립트를 검색하여 실행하고, 상기 스크립트의 실행된 처리 결과를 로깅하는 것을 특징으로 한다.
따라서, 사용자 요청 처리 시간을 단축시키고, 쓰레드 관리를 통한 시스템 성능을 최적화 하는 효과가 있다.

Description

웹 서비스의 멀티쓰레드 운용 시스템 및 방법{Muti-thread management system for web service and method therefor}
도 1은 본 발명의 실시예에 따른 동시 사용자 요청 처리의 전체적인 구성도.
도 2는 본 발명의 실시예에 따른 동시 사용자 요청에 의한 멀티쓰레드 처리 흐름도.
도 3은 본 발명의 실시예에 따른 N명의 동시 사용자의 요청에 따른 N개의 스크립트 실행도를 나타낸 도면.
본 발명은 웹 서비스의 멀티스레드 운용 시스템 및 방법에 관한 것으로서, 보다 상세하게는 다수의 사용자에 의하여 동시에 수행되는 프로세스 간에 상호 간섭을 방지하고, 공유 테이블 잠김에 따른 시스템 성능 저하를 개선시킨 웹서비스의 멀티스레드 운용 시스템 및 방법에 관한 것이다.
일반적으로 웹 서비스를 구현하기 위한 웹서버에 구현되는 어플리케이션들은 멀티쓰레딩(Multithreading)을 많이 사용하고 있다. 멀티쓰레딩 프로그램은 다중 프로세서에서 어떠한 프로세스라도 병렬적으로 실행하는 환경을 제공한다.
컴퓨터 프로그래밍에 있어서, 쓰레드는 다수의 사용자들의 요청을 동시에 처리할 수 있는 프로그램이 각각의 사용과 관련하여 가지고 있는 정보들을 의미하며, 프로그램의 관점에서 쓰레드는 한 명의 개별 사용자 또는 특정한 서비스 요청에 대응하는데 필요한 정보이다.
만약 다수의 사용자들이 그 프로그램을 쓰고 있거나, 다른 프로그램들로부터 동시에 요청이 발생하면, 각각의 사용자나 프로그램들을 위해 쓰레드가 생성되고, 관리된다. 또한, 쓰레드는 프로그램이 현재 어떤 사용자에 의하여 이용되는지를 파악하여 다른 사용자들이 재진입할 것인지를 판단할 수 있도록 한다.
상기한 바와 같이 쓰레드는 인터넷 망을 통하여 많은 사람들이 웹을 통하여 작업을 동시에 요청하는 경우에 각 동시 사용자들의 요청에 대응하여 다수 개가 생성되어 관리된다.
그러나, 이 경우 다수 사용자의 요청에 의하여 발생된 쓰레드는 상호 간섭하는 현상을 일으킨다. 또한, 잠금 기능에 의하여 사용자 요청을 처리하기 위한 테이블은 한꺼번에 여러 사람이 접근하는 것이 차단되므로 요청 처리의 지연이 발생된다. 결국, 처리속도가 떨어지고, 시스템의 성능이 저하되는 문제점이 발생된다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은, 웹기반에서 동일한 작업을 요청하는 사용자의 수를 시스템이 허용하는 범위로 제한하면서 각 쓰레드 별로 스크립트를 독립시켜서 상호 간섭 현상을 방지함에 있다.
본 발명의 다른 목적은 사용자 별로 요청처리시간에 차이를 둠에 따라서 쓰 레드를 순차적으로 생성시키고, 처리 결과를 반영함으로써 공유 테이블의 잠김에 따른 처리 지연을 방지함에 있다.
상기 과제를 달성하기 위한 본 발명에 따른 웹 서비스의 멀티쓰레드 운용 시스템은 사용자 요청에 대한 사용자 요청 내역이 기록되는 사용자 요청 테이블, 각 쓰레드별로 부여된 고유 번호와 각 쓰레드의 상태 정보가 저장되는 쓰레드 관리 테이블, 상기 사용자 요청 내역에 포함된 접수 순서를 기준으로 상기 고유 번호를 부여하고 상기 고유 번호와 동일한 번호를 갖는 PL/SQL 스크립트를 실행시키는 자바스크립트, 사용자의 요청을 실행하기 위해 필요한 데이터베이스를 관리하고, 상기 고유 번호와 동일한 번호가 할당되어 상기 고유 번호에 해당하는 쓰레드에 종속되어 실행하는 복수의 PL/SQL 스크립트, 상기 PL/SQL 스크립트를 컴파일해서 미리 하나의 오브젝트로 저장하는 오브젝 관리 테이블, 및 상기 PL/SQL 스크립트를 실행한 결과를 로그파일로 저장하여 관리하는 로그관리 테이블을 구비하여 구성된다.
또한, 본 발명에 따른 웹 서비스의 멀티쓰레드 운용 방법은, (a) 접수된 사용자 요청을 요청 접수 시간을 기준으로 순번을 부여하는 과정, (b) 상기 사용자 요청에 대한 쓰레드 번호를 할당하여 쓰레드를 생성하는 단계, (c) 상기 할당된 쓰레드 번호와 동일한 PL/SQL 스크립트를 실행하는 단계, 및 (d) 상기 실행된 PL/SQL 스크립트의 처리 결과를 로깅하는 단계, (e) 상기 PL/SQL 스크립트의 실행이 종료되면 상기 할당된 쓰레드 번호를 반환하여 상기 쓰레드 번호를 가용 상태로 변경시키는 단계를 구비하고, 상기 쓰레드 번호의 갯수는 미리 정해진 시스템에서 허용가능한 쓰레드 갯수(N)와 동일하고, 상기 (b) 단계에서 상기 쓰레드 번호가 모두 할당되어 상기 사용자 요청에 신규로 할당가능한 쓰레드 번호가 존재하지 않는다면 할당가능한 쓰레드 번호가 존재할 때까지 상기 사용자 요청에 대한 쓰레드 번호의 할당을 대기할 수 있다.
상술한 목적 및 기타의 목적과 본 발명의 특징 및 이점은 첨부도면과 관련한 다음의 상세한 설명을 통해 보다 분명해 질 것이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명하면 다음과 같다.
도 1을 참조하면, 웹 상에 사용자(5)와 웹서버(10)가 접속되고, 웹서버(10)는 멀티쓰레드를 수행하기 위한 구성을 갖는다.
이를 위하여 웹서버(10)는 웹관리부(11), 자바스크립트(12), 오브젝트 관리 테이블(13), 사용자 요청 테이블(14), 쓰레드 관리 테이블(15), PL/SQL 스크립트(16), 데이터베이스(17), 로그 관리 테이블(18)을 구비한다.
웹관리부(11)는 웹서버(10)에서 이루어지는 서비스의 제공을 위한 전체적인 관리를 수행하며, 웹과 접속을 위한 인터페이스 기능을 갖는다.
그리고, 자바스크립트(12)는 웹관리부(11)에서 사용자 요청 접수, 쓰레드 생성 및 관리를 수행하기 위한 프로그램을 갖는다. 그러므로, 자바스크립트(12)는 요청 사항을 사용자 요청 테이블(14)에 저장하고, 사용자 요청에 대응하여 사용 가능한 쓰레드를 할당하고, 쓰레드의 사용이 종료되면 쓰레드 사용 상태를 해제하고 해당 쓰레드 번호를 가용 상태로 설정한다.
그리고, 오브젝트 관리 테이블(13)은 오브젝트 단위 별 인덱스, 공유 변수 등을 포함하는 시스템 운용에 필요한 데이터를 가지며, 사용자 요청 테이블(14)은 하기 <표 1>과 같이 사용자 요청 사항에 대한 데이터를 갖는다.
<표 1>
컬럼명 데이터 타입 (oracle 형식) 의미 실 데이터 예
sequm number 접수 순번 10
userid char(9) 사용자 ID '960030671'
req_time date 요청접수시간 2002/03/07:00:00:00
procname varchar2(20) 실행화일명 'pr_make_mr'
request number 요청여부 1(요청접수) 0(요청처리)
result number 처리결과 1(수행중) 2(정상종료) 3(오류종료)
.... .... .... ....

사용자 요청 테이블(14)의 구조는 <표 1>과 같이 컬럼명, 데이터 타입, 그 컬럼에 따른 의미, 실제 데이터의 예를 저장한다.
사용자 요청 테이블(14)을 보면 어떤 사용자가 언제 요청을 했는지 알 수 있으며, 자바스크립트(12)의 주기적인 사용자 요청 테이블(14) 모니터링으로 요청처리가 있는지 여부를 판단한다. 예를 들어, 요청(request)이 1인 경우는 요청 접수가 있음을 의미하고, 요청(request)이 1인 경우를 모두 검색하여 요청 접수 시간별로 분류하고, 요청(request)이 0인 경우는 요청이 처리완료가 된 경우를 나타낸다.
그리고, 쓰레드 관리 테이블(15)은 하기 <표 2>와 같은 구조를 갖는다.
<표 2>
컬럼명 데이터 타입 (oracle 형식) 의미 실 데이터 예
thread_1 number 쓰레드 1 1
status_1 char(0) 쓰레드 1 상태 0(해제),1(할당)
thread_2 number 쓰레드 2 2
status_2 char(0) 쓰레드 2 상태 0(해제),1(할당)
.... .... .... ....
thread_N number 쓰레드 N N
status_N char(0) 쓰레드 N 상태 0(해제),1(할당)

그리고, PL/SQL 스크립트(16)는 데이터베이스(17)를 제어하며, 미리 시스템 환경을 고려하여 생성될 수 있는 동일한 N(임의의 자연수) 개의 스크립트를 갖는다. 그리고, 데이터베이스(17)는 웹서비스를 제공하기 위한 데이터를 가지며, 로그 관리 테이블(18)은 시스템에 접근한 사용자들의 로그 정보를 갖는다.
상기한 구성을 갖는 본 발명에 따른 실시예의 동작을 도 2를 참조하여 설명한다.
먼저 웹상에서 사용자들로부터 요청을 접수 받고, 접수 받은 요청을 사용자 요청 테이블(14)에 저장을 하고(S21), 웹관리부(11)가 사용자 요청 테이블(14)을 주기적으로 모니터링하여 사용자의 요청이 있는지 여부를 판단한다.(S22)
사용자 요청이 있으면, 사용자 요청 테이블(14)에 저장된 데이터를 요청 시간별로 분류하여, 해당 요청접수마다 고유한 순번(sequmn)을 부여하고(S23), 순번이 빠른 것부터 쓰레드 번호를 할당 한 후, 쓰레드 관리 테이블(15)에서 쓰레드 생성자에 의해 각각의 쓰레드를 생성한다(S24).
쓰레드를 생성할 때는 표 2의 쓰레드 관리 테이블(15)를 참조하여 현재 사용 중인 쓰레드 번호와 현재 사용하지 않고 있는 쓰레드 번호를 검색하여 사용하지 않는 쓰레드 번호를 할당 받아, 쓰레드를 생성한다. 쓰레드가 생성되면 표 1의 사용자 요청 테이블(14)에서 request를 0(요청처리)으로 갱신하고, result를 1(수행중)로 갱신하여 저장한다. 이렇게 해서 수행을 시작한 요청과 새로 들어온 요청을 사용자 요청 테이블(14)에서 구분할 수 있게 한다.
이렇게 각각 생성된 쓰레드에 부여된 번호와 동일한 번호를 갖는 PL/SQL 스크립트를 실행한다(S25). 이처럼, PL/SQL 스크립트(16)를 실행하여 처리한 후 처리 결과를 로깅하는데, 처리결과가 정상종료인지 오류종료인지 여부를 로그 파일로 기록하여 사용자로 하여금 처리 결과를 알 수 있게 하고, 오류종료인 경우에 로그파일을 통해 처리절차를 추적하여 어떤 절차에서 오류가 생겼는지를 알아낼 수 있다(S26).
즉, 스크립트 처리상에 오류가 발생하게 되면, 오류코드와 오류내용을 사용자 요청별로 로그 관리 테이블(18)에 기록하고, 사용자가 그 상황을 웹상에서 용이하게 검색하여 확인할 수 있도록 한다.
이와 같이, 쓰레드 생성시에 요청처리 시간별로 간격을 주고, 각각의 쓰레드가 고유의 쓰레드 번호를 유지하고 있으므로 쓰레드 상호간은 간섭이 발생하지 않고, 사용자 입장에서는 동시 수행같이 보이지만 내부적으로는 사용자 요청처리 시간의 근소한 차이에 따라 쓰레드를 순차적으로 생성하게 된다. 또한, 데이터베이스(17)에 대한 동시 접속의 확률을 낮게하여 일시적인 데이터 베이스 잠금(lock) 현상으로 인한 시스템의 성능저하를 최소화 할 수 있다.
도 3은 본 발명을 적용한 실시예로서, 도 2의 절차를 적용하여 N명의 동시 사용자의 요청에 따라 N개의 스크립트 실행하는 경우의 전체적인 흐름을 나타낸 도면이다.
도 3에서 도시한 바와 같이, 먼저 N명의 사용자들(사용자1, 사용자2 ‥‥‥사용자n-1, 사용자n)이 동시에 동일한 작업을 수행하고자 PL/SQL 스크립트 실행을 요청하고, 그 요청에 따라, 쓰레드 생성자가 분류된 N개의 사용자 요청의 순번에 따라 그에 해당하는 N개의 쓰레드(쓰레드1, 쓰레드2 ‥‥ 쓰레드n-1, 쓰레드n)를 형성하고, 각각의 해당 쓰레드마다 쓰레드 번호를 부여 한다.
그 후, 각 쓰레드가 할당받은 쓰레드 번호와 동일한 번호를 가지는 PL/SQL 스크립트가 실행되고 그 실행결과를 로그파일로 만들어 로그 관리 테이블(18)에 기록한다.
쓰레드의 갯수는 시스템의 사양에 의존적이므로 여러 차례의 성능시험을 통하여 가장 최적화된 N개를 선택하는 것이 바람직하다. 또한, N개의 쓰레드가 모두 사용 중일때에는 큐에서 대기하다가 해제된 쓰레드가 발생하면 할당하게 한다.
이때, 시스템 내부에서 N개의 쓰레드를 생성한다면, 동일한 PL/SQL 스크립트 N개가 필요하고, N개의 스크립트가 동일한 작업을 한 후 데이터베이스(17)에 그 결과값을 갱신해야 한다. 따라서, 쓰레드간 간섭이 발생하지 않도록 프로세스명, TEMP 테이블명, 커서명을 쓰레드별로 고유하고 유일한 것으로 해야 하므로, 시스템이 허용하는 쓰레드 개수 만큼의 PL/SQL 스크립트를 생성한 후 사전에 컴파일(compile)해서 스크립트 데이터 베이스 내에 하나의 오브젝트(object)로 등 록해야한다.
<표 3>멀티쓰레드용 PL/SQL 스크립트의 구성의 예제
CREATE OR REPLACE PROCEDURE procedurename_t# DECLARE var1 NUMBER; var2 tablename. columnname2%TYPE; CURSORcursorname_t# IS SELECT * FROM tablename; BEGIN UPDATEtemptablename1_t# SET columnname1 = columnname1 * 1.1 WHERE column2> 1000; LOOP FETCHcursorname_t#INTO var1, var2; EXIT WHENcursorname_t#%NOTFOUND; INSERT INTOtemptablename2_t#(columnname1, columnname2) VALUES (var1, var2); END LOOP; IFcursorname_t#%ISPOEN THEN CLOSEcursorname_t#; END IF; COMMIT; END procedurename_t#; /

표 3은 멀티쓰레드용 PL/SQL 스크립트의 구성의 한 예로서, 표 3에서 도시한 바와 같이, t#이라고 표시된 부분은 쓰레드의 번호가 붙는다. t1, t2, t3,....,tn 과 같이 표시하며, 이와같은 스크립트를 미리 생성하여 컴파일 한 후 스크립트 데이터 베이스에 등록하면, 각각의 쓰레드가 해당 쓰레드와 동일한 번호를 갖는 해당 PL/SQL 스크립트를 찾아 실행한다.
예를 들면, 사용자 요청에 의해서 첫번째로 불려지는 SQL 스크립트에서
execute procedurename_t#;
와 같은 실행명령어를 만나면 쓰레드 생성 시 부여받은 고유한 쓰레드 번호가 t#을 대치한다. 즉, execute procedurename_t3; 와 같이 대치되면 PL/SQL 스크립트 데이터 베이스에서 PL/SQL 스크립트를 사전에 생성하여 컴파일 한 후 등록된 procedurename_t3; 오브젝트를 검색하여 실행하게 된다.
아울러 본 발명의 바람직한 실시예는 예시의 목적을 위한 것으로, 당업자라면 첨부된 특허청구범위의 기술적 사상과 범위를 통해 다양한 수정, 변경, 대체 및 부가가 가능할 것이며, 이러한 수정 변경 등은 이하의 특허청구범위에 속하는 것으로 보아야 할 것이다.
이상에서 살펴본 바와 같이, 본 발명은 동시 사용자의 요청에 따라 생성된 멀티쓰레드 각각에 고유한 쓰레드 번호를 부여하여, 해당 쓰레드 번호에 따라 PL/SQL 스크립트를 순차적으로 실행시켜, 동시사용자에 의해 발생되는 멀티 쓰레드들을 상호 간섭없이 수행하고, 시스템 성능을 고려한 쓰레드 개수를 적절히 관리함으로써 시스템 성능을 최적화 할 수 있는 효과가 있다.
또한, 데이터베이스 처리를 제외한 사용자 요청을 접수하는 부분, 쓰레드 생성 및 관리 부분 등은 자바등과 같은 프로그램 언어를 사용하고, 데이터베이스를 제어하는 부분은 PL/SQL을 사용하여 고유한 프로그램 언어의 고급기능을 가지면서도 처리 속도도 향상되는 효과가 있다.

Claims (3)

  1. 사용자 요청에 대한 사용자 요청 내역이 기록되는 사용자 요청 테이블;
    각 쓰레드별로 부여된 고유 번호와 각 쓰레드의 상태 정보가 저장되는 쓰레드 관리 테이블;
    상기 사용자 요청 내역에 포함된 접수 순서를 기준으로 상기 고유 번호를 부여하고, 상기 고유 번호와 동일한 번호를 갖는 PL/SQL 스크립트를 실행시키는 자바스크립트;
    사용자의 요청을 실행하기 위해 필요한 데이터베이스를 관리하고, 상기 고유 번호와 동일한 번호가 할당되어 상기 고유 번호에 해당하는 쓰레드에 종속되어 실행하는 복수의 PL/SQL 스크립트;
    상기 PL/SQL 스크립트를 컴파일해서 미리 하나의 오브젝트로 저장하는 오브젝 관리 테이블; 및
    상기 PL/SQL 스크립트를 실행한 결과를 로그파일로 저장하여 관리하는 로그관리 테이블;로 구성됨을 특징으로 하는
    웹 서비스의 멀티쓰레드 운용 시스템.
  2. 제 1 항에 있어서, 상기 사용자 요청 테이블은,
    컬럼명 및 데이터형식에 따라 사용자 요청 내용을 요청 시간별로 저장하는 것을 특징으로 하는
    웹 서비스의 멀티쓰레드 운용 시스템.
  3. (a) 접수된 사용자 요청을 요청 접수 시간을 기준으로 순번을 부여하는 과정;
    (b) 상기 사용자 요청에 대한 쓰레드 번호를 할당하여 쓰레드를 생성하는 단계;
    (c) 상기 할당된 쓰레드 번호와 동일한 PL/SQL 스크립트를 실행하는 단계; 및
    (d) 상기 실행된 PL/SQL 스크립트의 처리 결과를 로깅하는 단계;
    (e) 상기 PL/SQL 스크립트의 실행이 종료되면 상기 할당된 쓰레드 번호를 반환하여 상기 쓰레드 번호를 가용 상태로 변경시키는 단계를 구비하고,
    상기 쓰레드 번호의 갯수는 미리 정해진 시스템에서 허용가능한 쓰레드 갯수(N)와 동일하고,
    상기 (b) 단계에서 상기 쓰레드 번호가 모두 할당되어 상기 사용자 요청에 신규로 할당가능한 쓰레드 번호가 존재하지 않는다면 할당가능한 쓰레드 번호가 존재할 때까지 상기 사용자 요청에 대한 쓰레드 번호의 할당을 대기하는 것을 특징으로 하는
    웹 서비스의 멀티쓰레드 운용방법.
KR1020020035614A 2002-06-25 2002-06-25 웹 서비스의 멀티쓰레드 운용 시스템 및 방법 KR100899527B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020020035614A KR100899527B1 (ko) 2002-06-25 2002-06-25 웹 서비스의 멀티쓰레드 운용 시스템 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020020035614A KR100899527B1 (ko) 2002-06-25 2002-06-25 웹 서비스의 멀티쓰레드 운용 시스템 및 방법

Publications (2)

Publication Number Publication Date
KR20040000697A KR20040000697A (ko) 2004-01-07
KR100899527B1 true KR100899527B1 (ko) 2009-05-27

Family

ID=37312520

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020035614A KR100899527B1 (ko) 2002-06-25 2002-06-25 웹 서비스의 멀티쓰레드 운용 시스템 및 방법

Country Status (1)

Country Link
KR (1) KR100899527B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190136258A (ko) 2018-05-30 2019-12-10 주식회사 티파이브온라인 멀티스레드 지원을 위한 크로스플랫폼 시스템 및 운용방법

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8127306B2 (en) 2006-12-18 2012-02-28 Ricoh Company, Ltd. Integrating eventing in a web service application of a multi-functional peripheral
US7680877B2 (en) * 2006-12-18 2010-03-16 Ricoh Company, Ltd. Implementing a web service application on a device with multiple threads
US7873647B2 (en) 2006-12-18 2011-01-18 Ricoh Company, Ltd. Web services device profile on a multi-service device: device and facility manager
US7987278B2 (en) 2006-12-18 2011-07-26 Ricoh Company, Ltd. Web services device profile on a multi-service device: dynamic addition of services
US8321546B2 (en) 2007-01-10 2012-11-27 Ricoh Company, Ltd. Integrating discovery functionality within a device and facility manager
US8112766B2 (en) 2006-12-21 2012-02-07 Ricoh Company, Ltd. Multi-threaded device and facility manager
US8239876B2 (en) 2007-06-12 2012-08-07 Ricoh Company, Ltd. Efficient web services application status self-control system on image-forming device
US8453164B2 (en) 2007-09-27 2013-05-28 Ricoh Company, Ltd. Method and apparatus for reduction of event notification within a web service application of a multi-functional peripheral
CN109005381A (zh) * 2018-06-06 2018-12-14 北京世纪东方通讯设备有限公司 基于铁路综合视频监控的流媒体服务分转发方法及装置
CN111752727B (zh) * 2020-06-30 2023-06-20 上海观安信息技术股份有限公司 一种基于日志分析的数据库三层关联的识别方法
CN111752729B (zh) * 2020-06-30 2023-06-27 上海观安信息技术股份有限公司 一种构建三层关联关系模型的方法及三层关系识别方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1115684A (ja) * 1997-06-26 1999-01-22 Hitachi Ltd ドライバ処理方法
KR19990072256A (ko) * 1998-02-04 1999-09-27 포만 제프리 엘 클라이언트/서버컴퓨터시스템에서서버내의클라이언트요청들의디스패칭시에시맨틱동시제어를수행하는장치및방법
KR19990072255A (ko) * 1998-02-04 1999-09-27 포만 제프리 엘 클라이언트/서버컴퓨터시스템에서서버내의대기중인클라이언트요청들을스케줄링및디스패칭하는장치및방법
KR20000005691A (ko) * 1998-06-12 2000-01-25 포만 제프리 엘 스레디드서버의성능을향상시키기위한시스템및방법
US6119145A (en) * 1997-02-28 2000-09-12 Oracle Corporation Multithreaded client application storing a separate context for each transaction thus allowing threads to resume transactions started by other client threads
KR20020017004A (ko) * 2000-08-28 2002-03-07 장태수 인터넷을 이용하여 현장 데이터를 관리할 수 있도록 하는시스템 및 그 방법

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6119145A (en) * 1997-02-28 2000-09-12 Oracle Corporation Multithreaded client application storing a separate context for each transaction thus allowing threads to resume transactions started by other client threads
JPH1115684A (ja) * 1997-06-26 1999-01-22 Hitachi Ltd ドライバ処理方法
KR19990072256A (ko) * 1998-02-04 1999-09-27 포만 제프리 엘 클라이언트/서버컴퓨터시스템에서서버내의클라이언트요청들의디스패칭시에시맨틱동시제어를수행하는장치및방법
KR19990072255A (ko) * 1998-02-04 1999-09-27 포만 제프리 엘 클라이언트/서버컴퓨터시스템에서서버내의대기중인클라이언트요청들을스케줄링및디스패칭하는장치및방법
KR20000005691A (ko) * 1998-06-12 2000-01-25 포만 제프리 엘 스레디드서버의성능을향상시키기위한시스템및방법
KR20020017004A (ko) * 2000-08-28 2002-03-07 장태수 인터넷을 이용하여 현장 데이터를 관리할 수 있도록 하는시스템 및 그 방법

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190136258A (ko) 2018-05-30 2019-12-10 주식회사 티파이브온라인 멀티스레드 지원을 위한 크로스플랫폼 시스템 및 운용방법

Also Published As

Publication number Publication date
KR20040000697A (ko) 2004-01-07

Similar Documents

Publication Publication Date Title
US6678802B2 (en) Method and apparatus for controlling access by a plurality of concurrently operating processes to a resource
KR100899527B1 (ko) 웹 서비스의 멀티쓰레드 운용 시스템 및 방법
US7721289B2 (en) System and method for dynamic allocation of computers in response to requests
US20100058346A1 (en) Assigning Threads and Data of Computer Program within Processor Having Hardware Locality Groups
US20050246705A1 (en) Method for dynamically allocating and managing resources in a computerized system having multiple consumers
JPS62180429A (ja) 多重処理環境でのロツク管理方法
Wang et al. Toward elastic memory management for cloud data analytics
Hollingsworth et al. Prediction and adaptation in active harmony
US8042119B2 (en) States matrix for workload management simplification
US20130138885A1 (en) Dynamic process/object scoped memory affinity adjuster
US8954969B2 (en) File system object node management
US11720561B2 (en) Dynamic rebuilding of query execution trees and reselection of query execution operators
Hazekamp et al. Combining static and dynamic storage management for data intensive scientific workflows
US10521430B1 (en) Dynamic selection of query execution operators
Ungureanu et al. Kubernetes cluster optimization using hybrid shared-state scheduling framework
JP2006524383A (ja) 実行時データ管理のためのストレージ・システム・クラス区分付けキュー
Xian et al. Contention-aware scheduler: unlocking execution parallelism in multithreaded java programs
JP5055059B2 (ja) データベース処理方法、その実施システム及びプログラム
US7334229B1 (en) Mutual exclusion at the record level with priority inheritance for embedded systems using one semaphore
US20090320036A1 (en) File System Object Node Management
Huang et al. Identifying the major sources of variance in transaction latencies: Towards more predictable databases
Ragunathan et al. Improving the performance of read-only transactions through asynchronous speculation
US7721287B2 (en) Organizing transmission of repository data
Ragunathan et al. Improving the performance of Read-only Transactions through Speculation
Raza et al. Autonomic success in database management systems

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee