KR20100071613A - 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법 - Google Patents

유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법 Download PDF

Info

Publication number
KR20100071613A
KR20100071613A KR1020080130393A KR20080130393A KR20100071613A KR 20100071613 A KR20100071613 A KR 20100071613A KR 1020080130393 A KR1020080130393 A KR 1020080130393A KR 20080130393 A KR20080130393 A KR 20080130393A KR 20100071613 A KR20100071613 A KR 20100071613A
Authority
KR
South Korea
Prior art keywords
middleware
query
usn
query request
information
Prior art date
Application number
KR1020080130393A
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 KR1020080130393A priority Critical patent/KR20100071613A/ko
Publication of KR20100071613A publication Critical patent/KR20100071613A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/02Standardisation; Integration
    • H04L41/0213Standardised network management protocols, e.g. simple network management protocol [SNMP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 USN 미들웨어 시스템으로 구성된 POOL 앞에 USN 센서정보 질의를 분산 처리할 수 있는 가중치적용 로드 밸런싱 알고리즘을 적용함으로써, 기존 시스템에서 안고 있는 확장성 문제를 해결할 수 있는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법에 대한 것이다.
USN미들웨어, 로드밸런싱

Description

유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법{USN Middleware query processing load balancing systems and the method}
본 발명은 유에스엔(USN)(이하, "USN" 이라 한다) 미들웨어 POOL에 USN 센서정보 질의를 분산 처리할 수 있는 가중치 적용 로드 밸런싱 알고리즘을 적용한 시스템을 설치함으로써, 기존 시스템에서 안고 있는 성능 개선 및 확장성 문제를 동시에 해결할 수 있는 센서 정보 질의 요청 분산 처리를 원활하게 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법에 관한 것이다.
컴퓨터서비스는 컴퓨팅 환경이 사용자의 환경정보를 모니터링 하여 능동적으로 상황에 맞는 서비스를 제공한다. 최근 들어 유비쿼터스 서비스에 필요한 사용자 환경의 모니터링을 위해 RFID를 비롯한 다양한 종류의 센서들이 곳곳에 배치되고 있다. 이런 센서들은 환경정보를 주기적으로 모니터링 하여 컴퓨팅 환경에 데이터를 전달해 주게된다. 이 때 컴퓨팅 환경에서 받는 데이터는 양이 매우 많고 지속적이고 주기적으로 업데이트 되는 특성을 지니므로 데이터 스트림(Data Stream)이라 불린다.
다양한 센서들로부터 수집되는 데이터는 네트워크를 통하여 연속적으로 생성 및 전달되는 스트림 데이터의 형태를 나타내고, 이러한 스트림 데이터를 효율적으로 처 리하기 위한 스트림 데이터 처리 시스템 개발에 관심이 증대되고 있는 상황이다.
한편, 스트림 데이터 처리 시스템에서 스트림 데이터에 대한 질의는 기존 데이터베이스 관리 시스템에서처럼 질의 대상이되는 데이터 집합이 먼저 정해진 환경에서 질의를 하여 그 결과를 얻어오는 일회 질의(one time query)와 구별하기 위해,질의가 먼저 등록된 후에 끊임없이 생성되어 입력되는 스트림 데이터에 질의를 계속 적용하여 검색한다고 해서 연속 질의(continuous query)라 한다.
이때, 연속 질의의 경우에는 하나 이상의 센서에 의해 수집된 각 스트림 데이터에 대하여 하나 이상의(수십 혹은 수백 이상일 수도 있음) 연속적인 질의 과정을 수행하므로, 그 데이터 처리량이 방대한 특징이 있다.
현재 개발되어 자주 사용되는 서비스 플랫폼으로 Web Service, J2EE, OSGi등을 들 수 있다. 이런 플랫폼들은 분산 서비스를 위한 컴포넌트 기반의 표준화된 컴퓨팅 환경을 제공한다. 하지만 이들은 입력 데이터로 유비쿼터스 환경에서 발생하는 데이터 스트림을 고려하지 않고 있다. 이들은 주로 정적인 데이터 저장소에 읽고 쓰는 방식으로 데이터를 관리하여 서비스를 제공하므로, 이 방식은 지속적으로 업데이트 되고, 양이 많은 데이터 스트림을 읽고 쓰기에는 성능상의 문제를 지닌다.
데이터 스트림 처리를 위해 제안된 스트림 처리 엔진은 데이터 스트림에 관한 SQL 기반의 새로운 질의 모델과 선택(selection), 집계 함수(aggregation) 등의 제한적인 데이터베이스 연산에 한해 매우 효율적인 데이터 처리를 지원한다.
하지만 스트림 처리 엔진은 보다 일반적이고 복잡한 형태의 서비스 로직을 개발하고 동작시키는 데에는 한계가 있다.
대부분의 유용한 고부가 가치 서비스들이 SQL 로 표현될 수 있는 범위 밖의 프로그램 코드로 작성되고 있다.
종래기술로 실시간으로 업데이트 되는 도로 정보에 기반하여 최적의 경로를 실시간으로 찾아주는 서비스 최적 경로를 찾기 위한 알고리즘으로는 다익스트라(Dijkstra) 알고리즘 등이 많이 사용되는 데이타는 SQL 로 표현하는 것이 불가능하며,
USN 응용 서비스가 확대되거나 USN 센서네트워크의 규모가 커지거나 함에 따라, 센서정보 질의 요청 건수가 많아 질 수 있으며, 이에 따라 USN 미들웨어의 응답속도가 떨어질 수 밖에 없는 이러한 문제점을 해결하고자 많은 연구가 있어 왔다.
예들 들면, 국내공개특허공보 공개번호 제10-0786504호에는 유비쿼터스 환경에서 지식기반 홈네트워크 서비스의 동적 세션 관리 장치에 있어서, 사용자의 이동에 따른 센서 값(사용자 인식정보)을 입력받음에 따라 상기 센서 값의 식별자를 이용하여 사용자 의 현재 위치 및 서비스 등록 여부를 검사하기 위한 세션 관리엔진(Session Managing Engine); 상기 세션 관리엔진으로부터의 사용자 위치정보에 따라 사용자에게 맞는 서비스를 선정하고, 상기 선정한 서비스에 정책적 상황 검증을 수행하여 충돌정보 및 오류정보를 추출하기 위한 서비스 관리엔진(Service Control Engine); 상기 세션 관리엔진에서 추출한 사용자의 위치정보와 상기 서비스 관리엔진에서 추출한 서비스, 충돌정보 및 오류정보를 이용하여 질의를 생성한 후 추론엔진으로 전달하고, 상기 추론엔진으로부터 전달받은 서비스 제공 정보를 서비스 명령 관리엔진으로 전달하기 위한 질의 생성엔진(Query Generating Engine); 및 상기 질의 생성엔진으로부터 전달받은 서비스 제공정보에서 각 서비스 번들에 상응하는 정보를 추출하여 해당 서비스 번들로 전송하고, 해당 서비스를 관리하기 위한 상기 서비스 명령 관리엔진(Action Managing Engine)을 포함하는 유비쿼터스 환경에서 지식기반 홈 네트워크 서비스의 동적 세션 관리 장치가 공개되어 있고,
국내등록특허공보 등록번호 제10-0793057호에는 이기종 센서 네트워크 기반의 정보 서비스 제공 시스템에 있어서, 센서 네트워크를 구성하며, 주변 환경의 정보를 센싱하기 위한 센싱수단; 상기 센싱수단으로부터 실시간으로 센싱된 데이터를 취합하여 USN 미들웨어수단에 메시지로 전달하기 위한 센서네트워크 데이터 전송수단; 상기 센서 네트워크 데이터 전송수단을 통해 전달받은 메시지로부터 센싱 데이터를 추출하기 위한 센서 네트워크 추상화수단; 상기 센서 네트워크 추상화수단에서 추출된 센싱 데이터를 분석하여 사물 및 환경 정보를 추출하고, 상기 추출 한 사물 및 환경 정보로부터 이벤트(지식 콘텐츠) 및 환경 상황 정보를 생성하기 위한 센서 네트워크 지능화 수단; 및 상기 센서 네트워크 지능화 수단에서 생성된 이벤트(지식 콘텐츠) 및 환경 상황 정보를 상기 응용 프로그램이 원하는 형태로 상기 응용 프로그램에게 제공하기 위한 서비스 플랫폼 관리수단을 포함하는 이기종 센서 네트워크 기반의 정보 서비스 제공 시스템이 기술되어 있으며,
동 공보 등록번호 제783,679호에는 데이터 스트림에 기반하는 서비스의 개발, 배 치, 제공을 용이하게 하는 미들웨어 시스템에 관한 것으로 특히 무선인식(RFID : Radio Frequency Identification) 시스템 또는 유비쿼터스 센서 네트워크(USN : Ubiquitous Sensor Network) 등과 같이 양이 많고 지속적으로 업데이트 되는 데이터 스트림을 입력으로 이용하는 서비스를 지원하는 장치 및 방법에 관한 것으로, 서비스 유닛 활성화 언어 파일에 의해 지정된 서비스 유닛과 스트림 소스 기술언어 파일을 선택하는 단계; 상기 서비스 유닛 활성화 언어 파일에 의해 작성된 질의와 상기 선택된 스트림 소스 기술언어 파일에 작성된 스트림 공급자의 주소를 사용하여 해당 스트림 공급자에게 질의를 전송하는 단계; 상기 전송된 질의의 결과에 대한 스키마 정보에 따라 버퍼를 준비하는 단계; 상기 선택된 서비스 유닛의 인스턴스를 생성하고 상기 서비스 유닛 활성화 언어 파일에 의해 지정된 실행모드로 서비스 유닛을 초기화 하는 단계; 상기 스트림 공급자로부터 제공된 연속적인 데이터 스트림으로 상기 준비된 버퍼에 저장된 데이터 스트림을 실시간적으로 갱신하는 단계; 사용자 요청에 응답하여 상기 버퍼에 저장된 데이터를 주어진 실행모드로 처리하여 사용자에게 요청 결과를 전달하는 단계로 구성된 데이터 스트림 중개 프로세싱 방법이 공개되어 있으며,
동 공보 등록번호 제813,000호에는 스트림 데이터 처리 시스템에 있어서, 질의 조건 평가 결과를 갱신하면서 저장하기 위한 평가 결과 저장 수단; 스트림 데이터에 대한 윈도우 평가를 수행하여 다음 차례의 질의 조건 평가 대상이 되는 데이터를 선별하기 위한 윈도우 평가 수단; 상기 윈도우 평가 수단으로부터 전달받은 데이터를 이전의 질의 조건 평가 결과의 재사용 가능 여부에 따라 새로운 데이터와 중복 입력 데이터로 분리하기 위한 데이터 분리 수단; 상기 데이터분리 수단으로부터 전달받은 중복 입력 데이터에 대한 질의 조건 평가 결과를 상기 평가 결과 저장 수단으로부터 추출하기 위한 재사용 결과 추출 수단; 상기 데이터 분리 수단으로부터 새로운 데이터를 전달받음에 따라 질의조건 평가를 수행하여 질의 조건 평가 결과를 생성하기 위한 질의 조건 평가 수단; 및 상기 재사용 결과 추출 수단과 상기 질의 조건 평가 수단으로부터 각각 전달받은 질의 조건 평가 결과를 취합하여 출력하고 상기 평가 결과 저장 수단으로 전달하기 위한 결과 구성 수단을 포함하는 기술이 공개되어 있음을 알 수 있다.
USN 응용 서비스에서 요청한 센서정보 질의 요청은 USN 미들웨어에서 받아 분석한 후, 해당 센서네트워크에 알맞은 명령어로 전환하여 이를 USN 센서네트워크로 전달한다. USN 센서네트워크는 USN 미들웨어로부터 들어온 명령어에 대하여 실행한 후 그 결과를 USN 미들웨어에 전달하며, USN 미들웨어는 USN 센서네트워크로부터 받은 결과를 USN 응용 서비스에서 필요한 적절한 데이터 포맷으로 바꾸어 응답함으로써 일련의 과정이 종료된다.
하지만 USN 응용 서비스가 확대되거나 USN 센서네트워크의 규모가 커지거나 함에 따라, 센서정보 질의 요청 건수가 많아 질 수 있으며, 이에 따라 USN 미들웨어의 응답속도가 떨어질 수밖에 없는 문제를 갖는다.
이 문제를 해결할 수 있는 방법으로 이미 도입된 USN 미들웨어의 하드웨어 스펙 을 업그레이드하는 방법과, USN 미들웨어의 신규 도입을 통하여 해결하는 방법을 들 수 있다. 하지만 두 가지 방법 모두 문제를 내포하고 있다.
첫 번째 방법은 USN 미들웨어의 하드웨어 스펙을 업그레이드 하는 과정에서 USN 응용서비스 일시 중단 사태 및 기존 데이터 백업 및 복원 문제를 야기 시킬 수 있으며,
두 번째 방법은 USN 응용서비스 프로그램을 도입된 미들웨어를 모두 수용할 수 있는 구조로 일부 수정해야 하는 복잡한 상황이 야기되는 문제점들이 본 발명이 해결하고자 하는 과제인 것이다.
본 발명은 상기와 같은 문제점을 해결하기 위하여, USN 미들웨어 앞에 USN 센서정보 질의를 분산 처리할 수 있는 가중치 적용 로드 밸런싱 알고리즘을 적용한 기술구성으로서, USN 미들웨어 시스템에 대한 질의 처리 요청에 대하여, 로드 밸런싱 시스템이 질의 요청 및 질의 응답에 대한 평가 결과를 저장하는 수단과; 저장된 평가 결과를 이용하여 질의 요청을 단시간에 수행할 수 있는 USN 미들웨어 시스템을 선별하는 수단과; 해당 USN 미들웨어 시스템으로 질의 전송하며; 질의 처리 결과를 받아 처리 성능을 저장하는 수단으로 구성된 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법을 제공하는 것이 본 발명이 이루고자 하는 과제 해결수단인 것이다.
본 발명은 USN 센서 정보 질의 요청을 분산 처리함으로써, USN 응용서비스의 발전 단계에서 올 수 있는 과도한 질의 요청사항을 로드 밸런싱 시킬 수 있다. 즉 USN 응용서비스를 포함하여 USN 응용서비스간의 융복합를 통한 전혀 새로운 형태의 응용서비스가 다양한 형태로 나올 수 있으며, u-City사업에서 나타날 수 있는 동일 센서네트워크 규모의 확대 또한 질의 요청사항이 급격하게 증가할 수 있음에 따라, 질의 요청사항에 대한 분산 처리는 필수적이라 할 수 있고, 본 발명을 통하여 안정되고, 편리한 응용서비스를 제공할 수 있으며, 앞으로 다가올 u-City 사업에서도 미리 준비할 수 있는 효과가 있다
상기와 같은 목적을 달성하기 위하여 본 발명은 시스템 스타트업 과정에서 미들웨어 시스템 연결을 위한 구성정보를 로딩하는 수단; 구성정보에 따라 해당 USN 미들웨어 시스템에 등록 및 연결하는 수단; USN 응용서비스로부터의 질의 요청에 대하여 평가 과정을 통하여 적합한 USN 미들웨어 시스템으로 질의 정보를 전달하는 수단; 미들웨어 시스템으로부터 전달된 질의 요청 완료 결과를 해당 USN 응용서비스에 전달하는 수단; 질의 요청 완료 결과로부터 질의 평가 결과를 저장하는 수단; 시스템 셧다운 과정에서 등록해지 및 연결 해지하는 수단으로 구성된
유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템과,
상기 시스템을 이용하여 USN 센서정보 질의 분산 처리를 수행하기 위하여, 각각 USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 파악하는 단계와; 응용 서비스에서 요청한 질의 요청 관리 단계와; 질의 요청 정보 분석 단계와; 현재까지의 질의 처리 상태 정보를 고려한 분산 적용 단계로 구성된 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법에 관한 것이다.
본 발명은 도1에 도시된 바와 같이, 본 발명의 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 전체도는 n개의 응용서비스와 n개의 USN 미들웨어가 있으며, 그 사이에 질의 요청에 대한 분산 적용을 위한 한 개의 로드 밸런싱 서버로 구성되며,
도2는 본 발명의 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 상세도로서,
USN 센서 정보를 파악 및 관리 하는 LoadBalancer와, 상기 LoadBalancer와 연결된 EstimationManager와, 상기 EstimationManager와 연결된 PerformanaceMonitor와, 상기 EstimationManager와 다른 일측에 연결된 QueryManager와, 상기 QueryManager와 연결된 QueryExecutionLogManager로 구성되어 있음을 알 수 있다. 참고로 로드 밸런싱 시스템은 스타업하는 과정에서 Spring Framework 환경에 의하여 각 USN 미들웨어 시스템 별 대행자에 해당하는 USN 미들웨어 Proxy 객체가 생성되며, PerformanceMontor인 경우 Quartz 스케쥴러에 의하여 클론 형태로 동작하게 된다.
따라서, EstimationManager 는 QueryManager를 통한 질의 요청에 대한 평가와 PerformanaceMonitor를 통한 미들웨어 시스템의 대한 성능 자원을 통한 평가 수단; 과 질의 요청 평가와 성능 자원 평가를 함께 고려한 종합 평가 수단;을 통하여 성능이 높은 USN 미들웨어 시스템을 선정하며,
QueryManager는 현재 실행중인 질의 요청에 대하여 각 미들웨어 시스템별 각 질의 요청에 대한 완료시간을 고려한 합계 시간 산출 기능; 과 과거 완료된 요청 질 의에 대한 평균 완료시간 산출 기능; 과 각 미들웨어 시스템별 종합 완료 추정 시간 산출 기능을 담당하고,
PerfomanceMonitor는 성능 자원( CPU 정보, CPU 이용률, 메모리정보, 메모리 이용률, 네트워크 트래픽 정보, 네트워크 트래픽 이용률)을 통하여 미들웨어 시스템의 가용 성능을 평가하는 기능을 담당하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템인 것이다.
국내등록특허 등록번호 제783679호는 새로운 스트림 기반 서비스를 개발할 때도 복잡한 스트림 연결 및 처리 부분을 코딩할 필요가 없으므로 서비스의 개발이 매우 용이해지고 개발 시간이 단축되는 효과가 있는 기술이나 본원 발명은 USN 센서정보 질의를 분산 처리할 수 있는 로드 밸런싱 알고리즘을 적용함으로써, USN 미들웨어의 응답속도를 향상시키는 기술이며, 본원 발명은 USN 미들웨어에서 질의 응답속도를 높이기 위하여 분산으로 처리하는 방법으로 상이함을 알 수 있으며,
국내등록특허 등록번호 제813,000호는 질의 응답속도를 높이는데, 로드 밸런싱 서버를 이용하여 데이터를 중복하여 처리하지 못하게 하는 방법을 택하고 있으나, 본원 발명은 한국정보통신기술협회 표준 TTAS.KO-06.0170 "USN 미들웨어 플랫폼 참조 모델" 에따라 USN 미들웨어 시스템의 기본 기능으로써 질의 요청에 대한 데이터 중복 처리 기능를 보유하고 있어, 질의 요청에 대한 데이터 중복 처리 제어 기능을 로드 밸런싱 시스템에서 처리하지는 않으나, USN 센서정보 질의를 분산 처리할 수 있는 가중치 적용 로드 밸런싱 알고리즘을 적용함으로써, USN 미들웨어의 응답속도를 향상시키는 기술로 각 USN에 분산 적용하는 방법을 사용하는 방법이 상이함 을 알 수 있다.
도2는 본 발명의 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 상세도를 보다 상세히 설명하면, 다음과 같다.
USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 파악하는 단계에서는 질의 요청 내용, 질의 처리 결과, 질의 처리 소요 시간을 고려한 질의 적용등과 같은 정보를 수집하는 파악 단계를 말한다.
응용 서비스에서 요청한 질의 요청 관리 단계에서는 다양한 응용 서비스에서 들어온 질의 요청을 각 응용서비스별로 요청시간,요청질의, 요청질의 우선순위,요청질의 응답요청 시간등 과 관련된 정보를 큐에 저장관리 단계를 말한다.
질의 요청 정보 분석 단계에서는 현재까지 각 응용서비스에서 요청한 질의 정보와 큐에 저장된 질의를 분석하여 우선 순위를 결정하여, 질의 처리 순서를 재정리하는 단계를 말한다.
분산 적용 단계에서 USN 미들웨어의 가용상태를 파악하여 가용상태가 우수한 미들웨어 서버를 선정하여 재정리된 질의 처리순서에 따라, 질의 내용을 분산 적용하는 단계를 말한다.
USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 수집하는 파악 단계에서는 질의 요청 내용, 질의 처리 결과, 질의 처리 소요 시간을 고려한 질의 적용등과 같은 정보를 수집하는 단계를 말한다.
응용 서비스에서 요청한 질의 요청 관리 단계에서는 다양한 응용 서비스에서 들어온 질의 요청을 각 응용서비스별로 요청시간, 요청 질의, 요청질의 우선순위, 요청 질의 완료 시간등 과 관련된 정보를 큐에 저장관리 단계를 말한다.
질의 요청 정보 분석 단계에서는 현재까지 각 응용서비스에서 요청한 질의 정보와 큐에 저장된 질의를 분석하여 우선 순위를 결정하여, 질의 처리 순서를 재정리하는 단계를 말한다.
LoadBalancer는 스타트업 과정에서 미들웨어 구성정보( config.properties )를 로드한 후 loadBalancerContext.xml 에 의하여 USN 미들웨어에 대응되는 Proxy 객체를 생성하고, 각 Proxy 객체가 각 미들웨어 시스템에 인증 및 등록하는 기능; 셧다운 과정에서 각 미들웨어 시스템으로 부터의 등록 해지 및 연결해지를 담당하는 기능; 과 각 USN 응용 서비스 시스템과의 인증과정에서 생성된 세션에 대한 관리 기능; 과 요청된 질의 요청에 대하여 다수의 미들웨어 시스템에 대하여 EstimationManagger 로부터 평가된 결과를 통하여 적합한 미들웨어를 선정하여 질의 전달하는 기능; 질의 요청 완료 결과를 해당 USN 응용서비스에 전달하는 기능을 담당한다.
Figure 112008087510609-PAT00001
표1 config 구성정보 파일
Figure 112008087510609-PAT00002
표2 loadbalancer context.XML
EstimationManager는 USN 응용 서비스 시스템으로부터 요청된 질의 요청에 대하여 성능 평가를 행한 후, 적정한 미들웨어 시스템을 선정하여 질의 요청을 전달하는 역할을 담당한다. 질의 요청에 대하여 성능 평가를 수행함에 있어 QueryManager 로부터 해당 질의 요청에 대하여 각 미들웨어 시스템별로 실행중인 질의 요청에 대한 추정 완료 시간과 이미 완료된 질의 요청에 대한 평균 완료 시간을 획득하는 기능과; PerfomanceMonitor 로부터 각 미들웨어 시스템별로 성능자원에 대한 평균 성능 정보를 획득하는 기능;을 통하여 종합적인 성능 평가 과정을 통하여 해당 질의 요청에 대한 적합한 미들웨어 시스템을 선정하는 기능을 담당하고; 이를 LoadBalancer에게 전달하는 기능을 담당한다.
QueryManager는 USN 응용 서비스 시스템으로부터 요청된 질의 요청 정보에 대하여 큐(Queue) 자료구조 유형으로 저장관리하고, 전에 없던 신규 질의 요청인지 여부를 확인하고, 신규 질의 요청에 대하여 질의 아이디를 부여하고, 기존 질의 요청과 일치할 경우 이미 부여된 아이디를 활용하며, 질의 완료시 QueryExecutionLog 데이터를 QueryExecutionLogManager를 통하여 저장하는 기능; 과 현재 진행중인 질의 요청에 대하여 미들웨어별로 추정 실행 시간의 합을 계산하고, 진행중인 질의 요청에 없는 경우 QueryExecutionLogManager 로부터 과거의 실행 결과를 조회하여 추정 실행 시간을 계산에 포함하지만, QueryExecutionLogManager 로부터 과거의 실행 결과가 없는 경우 추정 실행 시간을 산정하지 않는 기능을 담당한다. 실행중인 질의 실행 관리 정보는 다음과 같다. 질의 시작시간, 질의 실행 완료 추정 시간, 질의 아이디, 질의 수행 미들웨어 아이디등이다.
QueryExecutionLogManager 는 USN 응용 서비스 시스템으로부터 요청된 질의 요청 정보와 질의 처리 결과를 저장하는 기능;과 QueryManager 로부터 특정 질의 요청에 대하여 복수개의 QueryExecutionLog 데이터를 제공한다. QueryExecutionLog을 구성하고 있는 속성은 다음과 같다. 질의 시작 시간, 질의 완료 시간, 미들웨어 고유 식별 아이디, QueryManager에 의해 부여된 질의 아이디, 로그 데이터 유효여부 등이다.
PerformanceMonitor는 각 USN 미들웨어 시스템에 대하여 성능자원( CPU 정보, CPU 이용율, 메모리 정보, 메모리 이용률, 네트워크 트래픽 정보 및 네트워크 트래픽 이용률 )에 대하여 일정한 주기별로 수집을 담당하는 기능; 으로서 USN 미들웨어 시스템에 설치되어 제공하는 SNMP 서비스를 활용하여 수집한다. 질의 요청시 성능자원에 대한 평가를 통하여 미들웨어 시스템을 선정해야 한다.
각 시스템의 평가 방법은 다음 표에 기술된 바와 같이 평가함을 알 수 있다.
Figure 112008087510609-PAT00003
표3 질의 요청 평가 계산 산출
Figure 112008087510609-PAT00004
표4 성능자원에 의한 평가 계산 산출
Figure 112008087510609-PAT00005
표5 특정 질의 요청에 대한 전체 평가 계산 산출
Figure 112008087510609-PAT00006
표6 적합한 미들웨어 선정 계산 산출
도1 본 발명의 유에스엔 미들웨어 질의 처리 로드 밸런싱 시스템 전체도.
도2는 본 발명의 유에스엔 미들웨어 질의 처리 로드 밸런싱 시스템 상세도.

Claims (12)

  1. 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템에 있어서,
    시스템 스타트업 과정에서 미들웨어 시스템 연결을 위한 구성정보를 로딩하는 수단; 구성정보에 따라 해당 USN 미들웨어 시스템에 등록 및 연결하는 수단; USN 응용서비스로부터의 질의 요청에 대하여 평가 과정을 통하여 적합한 USN 미들웨어 시스템으로부터 질의 정보를 전달하는 수단; 미들웨어 시스템으로부터 전달된 질의 요청 완료 결과를 해당 USN 응용서비스에 전달하는 수단; 질의 요청 완료 결과로부터 질의 평가 결과를 저당하는 수단; 시스템 셧다운 과정에서 등록해지 및 연결해지 하는 수단을 포함하여 구성되어 있음을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템.
  2. 청구항 1에 있어서, 상기 USN 응용서비스로부터의 질의 요청에 대하여 평가 과정을 통하여 적합한 USN 미들웨어 시스템으로부터 질의 정보를 전달하는 수단중
    성능 평가는 EstimationManager에서 일부 수행되며, QueryManager를 통한 질의 요청에 대한 평가와 PerformanaceMonitor를 통한 미들웨어 시스템의 대한 성능 자원을 통한 평가 수단; 과 질의 요청 평가와 성능 자원 평가를 함께 고려한 종합 평가 수단;을 통하여 성능이 높은 USN 미들웨어 시스템을 선정함을 특징으로 하는
    유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템.
  3. 청구항 1에 있어서, 상기 USN 응용서비스로부터의 질의 요청에 대하여 평가 과정을 통하여 적합한 USN 미들웨어 시스템으로부터 질의 정보를 전달하는 수단중
    성능 평가는 QueryManager에서 일부 수행되며, 실행중인 질의 요청에 대하여 각 미들웨어 시스템별 각 질의 요청에 대한 완료시간을 고려한 합계 시간 산출 기능; 과 과거 완료된 요청 질의에 대한 평균 완료시간 산출 기능; 과 각 미들웨어 시스템별 종합 완료 추정 시간 산출 기능을 담당함을 특징으로 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템.
  4. 청구항 1에 있어서, 상기 USN 응용서비스로부터의 질의 요청에 대하여 평가 과정을 통하여 적합한 USN 미들웨어 시스템으로부터 질의 정보를 전달하는 수단중
    성능 평가는 PerfomanceMonitor에서 일부 수행되며 성능 자원( CPU 정보, CPU 이용율, 메모리정보, 메모리 이용율, 네트워크 트래픽 정보, 네트워크 트래픽 이용율)를 통하여 미들웨어 시스템의 가용 성능을 평가하는 기능을 담당함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 시스템.
  5. 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법에 있어서,
    각각 USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 파악하는 단계와; 응용 서비스에서 요청한 질의 요청 관리 단계와; 질의 요청 정보 분석 단계와; 현재까지의 질의 처리 상태 정보를 고려한 분산 적용 단계를 포함하여 구성되어 있음을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
  6. 청구항 5에 있어서, 상기 질의 요청 정보 분석 단계는 EstimationManager,
    QueryManager, QueryExecutionLogManager 및 PerformanceMonitor에서
    수행되며,
    EstimationManager는 USN 응용 서비스 시스템으로부터 요청된 질의 요청에 대하여 성능 평가를 행한 후, 적정한 미들웨어 시스템을 선정하여 질의 요청을 전달하고, 질의 요청에 대하여 성능 평가를 수행함에 있어 QueryManager 로부터 해당 질의 요청에 대하여 각 미들웨어 시스템별로 실행중인 질의 요청에 대한 추정 완료 시간과 이미 완료된 질의 요청에 대한 평균 완료 시간을 획득하는 기능과; PerfomanceMonitor 로부터 각 미들웨어 시스템별로 성능자원에 대한 평균 성능 정보를 획득하는 기능;을 통하여 종합적인 성능 평가 과정을 통하여 해당 질의 요청에 대한 적합한 미들웨어 시스템을 선정하는 기능을 담당하고; 적합한 미들웨어 시스템이 후 이를 LoadBalancer에게 전달하며,
    QueryManager는 USN 응용 서비스 시스템으로부터 요청된 질의 요청 정보에 대하여 큐(Queue) 저장관리하고, 전에 없던 신규 질의 요청인지 여부를 확인하고, 신규 질의 요청에 대하여 질의 아이디를 부여하고, 기존 질의 요청과 일치할 경우 이미 부여된 아이디를 활용하며, 질의 완료시 QueryExecutionLog 데이터를 QueryExecutionLogManager를 통하여 저장하는 기능; 과 현재 진행중인 질의 요청에 대하여 미들웨어별로 추정 실행 시간의 합을 계산하고, 진행중인 질의 요청에 없는 경우 QueryExecutionLogManager 로부터 과거의 실행 결과를 조회하여 추정 실행 시 간을 계산에 포함하지만, QueryExecutionLogManager 로부터 과거의 실행 결과가 없는 경우 추정 실행 시간을 산정하지 않는 기능을 담당하고,
    QueryExecutionLogManager 는 USN 응용 서비스 시스템으로부터 요청된 질의 요청 정보와 질의 처리 결과를 저장하는 기능; 과 QueryManager 로부터 특정 질의 요청에 대하여 복수개의 QueryExecutionLog 데이터를 제공하며,
    PerformanceMonitor는 각 USN 미들웨어 시스템에 대하여 성능자원( CPU 정보, CPU 이용율, 메모리 정보, 메모리 이용율, 네트워크 트래픽 정보 및 네트워크 트래픽 이용율 )에 대하여 일정한 주기별로 수집을 담당하는 기능; 으로서 USN 미들웨어 시스템에 설치되어 제공하는 SNMP 서비스를 활용하여 수집한다. 질의 요청시 성능자원에 대한 평가를 통하여 미들웨어 시스템을 선정함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
  7. 청구항 5에 있어서, 상기 질의 요청 정보 분석 단계는 EstimationManager,
    QueryManager, QueryExecutionLogManager 및 PerformanceMonitor에서
    수행되며, 미들웨어에 대하여 요청 질의 계산 산출은 다음식에 의해 계산함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
    다음식
    k번째 미들웨어에서 실행중인 질의 요청수가 N개 인 경우
    Figure 112008087510609-PAT00007
    k번째 미들웨어에서 실행 완료된 질의의 개수가 m개인 경우
    Figure 112008087510609-PAT00008
    k번째 미들웨어에서의 질의 평가 합계
    Figure 112008087510609-PAT00009
  8. 청구항 5에 있어서, 상기 질의 요청 정보 분석 단계는 EstimationManager,
    QueryManager, QueryExecutionLogManager 및 PerformanceMonitor에서
    수행되며, 미들웨어에 대한 성능자원을 통한 시스템 성능 평가는 다음식에 의해 평가함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
    다음식
    k번째 미들웨어인 경우
    CPU 자원 : CPU 의 개수, CPU 처리 속도, CPU 이용율
    Figure 112008087510609-PAT00010
    메모리 자원 : 메모리 용량, 메모리 처리 속도, 메모리 이용율
    Figure 112008087510609-PAT00011
    네트워크 자원 : 네트워크 속도, 네트워크 트래픽 이용율
    Figure 112008087510609-PAT00012
    전체 시스템 성능 평가
    Figure 112008087510609-PAT00013
    Figure 112008087510609-PAT00014
    : 로드 밸런싱 시스템 관리자에 의하여 결정되는 가중치
  9. 청구항 5에 있어서, 상기 질의 요청 정보 분석 단계는 EstimationManager,
    QueryManager, QueryExecutionLogManager 및 PerformanceMonitor에서
    수행되며, 미들웨어에 대한 질의 평가 결과와 성능 평가 결과를 고려한 전체 평가 계산 산출은 다음식에 의해 계산함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
    다음식
    k번째 미들웨어인 경우
    Figure 112008087510609-PAT00015
    Figure 112008087510609-PAT00016
    : 로드 밸런싱 시스템 관리자에 의하여 결정되는 가중치
  10. 청구항 5에 있어서, 상기 질의 요청 정보 분석 단계는 EstimationManager,
    QueryManager, QueryExecutionLogManager 및 PerformanceMonitor에서
    수행되며, 적합한 미들웨어 선정 계산 산출은 다음식에 의해 계산함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
    다음식
    Figure 112008087510609-PAT00017
    전체 평가결과에서 가장 최소값을 갖는 미들웨어 시스템이 질의 전달을 위한 적합한 미들웨어 시스템으로서 선정
  11. 청구항 5에 있어서, 상기 각각 USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 파악하는 단계와; 응용 서비스에서 요청한 질의 요청 관리 단계는
    LoadBalancer에서 수행되며, 스타트업 과정에서 미들웨어 구성정보를 로드한 후 각 미들웨어 시스템에 인증 및 등록하는 기능; 셧다운 과정에서 각 미들웨어 시스템으로 부터의 등록 해지 및 연결해지를 담당하는 기능;과 각 USN 응용 서비스 시스템과의 인증과정에서 생성된 세션에 대한 관리 기능; 과 요청된 질의 요청에 대하여 다수의 미들웨어 시스템에 대하여 EstimationManagger 로부터 평가된 결과를 통하여 적합한 미들웨어를 선정하여 질의 전달하는 기능; 질의 요청 완료 결과를 해당 USN 응용서비스에 전달함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
  12. 청구항 11에 있어서, 상기 각각 USN 미들웨어에서 수행하고 있는 질의 처리 상태 정보를 파악하는 단계와; 응용 서비스에서 요청한 질의 요청 관리 단계는
    LoadBalancer에서 수행되며, config.properties 구성 정보 파일을 로드한 후 N개의 USNMiddlware 객체를 생성한 후 LoadBalancer 객체에 N개의 USNMiddleware 객체를 등록하여 관리함을 특징으로 하는 유에스엔(USN) 미들웨어 질의 처리 로드 밸런싱 방법.
    <?xml version="1.0" encoding="UTF-8"?>
    <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd">
    <!-- 첫 번째 USN 미들웨어 -->
    <bean id="middleware1" class="net.uspider.USNMiddleware">
    <property name="id" value="$usnmw1.id"/>
    <property name="host" value="$usnmw1.host"/>
    <property name="userid" value="$usnmw1.userid"/>
    <property name="port" value="$usnmw1.port"/>
    <property name="proxyport" value="$usnmw1.proxyport"/>
    <property name="password" value="$usnmw1.password"/>
    <property name="snmpUserId" value="$usnmw1.snmp.userid"/>
    <property name="snmpCommunity" value="$usnmw1.snmp.community"/>
    <property name="snmpVersion" value="$usnmw1.snmp.version"/>
    </bean>
    ..........................
    <!-- N 번째 USN 미들웨어 -->
    <bean id="middlewareN" class="net.uspider.USNMiddleware">
    <property name="id" value="$usnmwN.id"/>
    <property name="host" value="$usnmwN.host"/>
    <property name="userid" value="$usnmwN.userid"/>
    <property name="port" value="$usnmwN.port"/>
    <property name="proxyport" value="$usnmwN.proxyport"/>
    <property name="password" value="$usnmwN.password"/>
    <property name="snmpUserId" value="$usnmwN.snmp.userid"/>
    <property name="snmpCommunity" value="$usnmwN.snmp.community"/>
    <property name="snmpVersion" value="$usnmwN.snmp.version"/>
    </bean>
    <!-- 로드 밸런서 관리자에 N개의 USN 미들웨어 등록 -->
    <bean id="loadBalancerManager" class="net.uspider.LoadBalancerManagerImpl">
    <property name="middlewares" >
    <list>
    <ref bean="middleware1"/>
    ..........
    <ref bean="middlewareN"/>
    </list>
    </property>
    </bean>
    </beans>
KR1020080130393A 2008-12-19 2008-12-19 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법 KR20100071613A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080130393A KR20100071613A (ko) 2008-12-19 2008-12-19 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080130393A KR20100071613A (ko) 2008-12-19 2008-12-19 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법

Publications (1)

Publication Number Publication Date
KR20100071613A true KR20100071613A (ko) 2010-06-29

Family

ID=42369084

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080130393A KR20100071613A (ko) 2008-12-19 2008-12-19 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법

Country Status (1)

Country Link
KR (1) KR20100071613A (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101512647B1 (ko) * 2013-10-18 2015-04-16 에스케이 텔레콤주식회사 질의처리엔진을 선택하는 방법
CN117112239A (zh) * 2023-10-23 2023-11-24 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种异构推理后端上的可扩展负载均衡方法及***
CN117544506A (zh) * 2023-11-09 2024-02-09 北京中电汇通科技有限公司 一种基于eBPF技术的容器云DNS性能优化方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101512647B1 (ko) * 2013-10-18 2015-04-16 에스케이 텔레콤주식회사 질의처리엔진을 선택하는 방법
CN117112239A (zh) * 2023-10-23 2023-11-24 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种异构推理后端上的可扩展负载均衡方法及***
CN117112239B (zh) * 2023-10-23 2024-02-09 合肥综合性国家科学中心人工智能研究院(安徽省人工智能实验室) 一种异构推理后端上的可扩展负载均衡方法及***
CN117544506A (zh) * 2023-11-09 2024-02-09 北京中电汇通科技有限公司 一种基于eBPF技术的容器云DNS性能优化方法
CN117544506B (zh) * 2023-11-09 2024-05-24 北京中电汇通科技有限公司 一种基于eBPF技术的容器云DNS性能优化方法

Similar Documents

Publication Publication Date Title
CN110191063B (zh) 服务请求的处理方法、装置、设备及存储介质
Zhang et al. WSPred: A time-aware personalized QoS prediction framework for Web services
US8498959B2 (en) Policy enforcement
EP2095236B1 (en) Method, system and computer program for testing software applications based on multiple data sources
US9246777B2 (en) Computer program and monitoring apparatus
JP6301256B2 (ja) 処理方法、コンピュータプログラム及びメタデータサポートサーバ
CN103001815B (zh) 测试数据的获取方法、装置及***
CN113055492A (zh) 服务灰度链路的控制方法、装置、计算机设备和存储介质
US9104565B2 (en) Fault tracing system and method for remote maintenance
EP2594050A1 (en) Method and apparatus for processing biometric information using distributed computation
WO2016150153A1 (zh) 一种用于软件发布的方法和装置
US7996840B2 (en) Method, system, and apparatus for scheduling pattern based web services
CN103973770A (zh) 信息处理***
Zhang et al. An online performance prediction framework for service-oriented systems
US20210255917A1 (en) Structured Software Delivery And Operation Automation
CN112087520A (zh) 数据处理方法、装置、设备及计算机可读存储介质
KR20100071613A (ko) 유에스엔(usn) 미들웨어 질의 처리 로드 밸런싱 시스템 및 그 방법
CN116974948B (zh) 业务***测试方法、***、设备和介质
CN112948255A (zh) 分布式的内核模糊测试***及方法
CN112860398A (zh) 基于规则引擎的数据处理方法、装置、设备及介质
CN114443940A (zh) 一种消息订阅方法、装置及设备
CN116974874A (zh) 数据库的测试方法、装置、电子设备及可读存储介质
CN109274533B (zh) 一种基于规则引擎的Web服务故障的定位装置和方法
US9479396B2 (en) XML based generic UNIX discovery framework
CN114363403A (zh) 服务访问方法、***、计算机设备和存储介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E902 Notification of reason for refusal
E601 Decision to refuse application