KR100856664B1 - System for offering application service provider service in grid-base and method for assigning server pool thereof - Google Patents

System for offering application service provider service in grid-base and method for assigning server pool thereof Download PDF

Info

Publication number
KR100856664B1
KR100856664B1 KR1020060053392A KR20060053392A KR100856664B1 KR 100856664 B1 KR100856664 B1 KR 100856664B1 KR 1020060053392 A KR1020060053392 A KR 1020060053392A KR 20060053392 A KR20060053392 A KR 20060053392A KR 100856664 B1 KR100856664 B1 KR 100856664B1
Authority
KR
South Korea
Prior art keywords
server
service
application
application service
processing
Prior art date
Application number
KR1020060053392A
Other languages
Korean (ko)
Other versions
KR20070119154A (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 KR1020060053392A priority Critical patent/KR100856664B1/en
Publication of KR20070119154A publication Critical patent/KR20070119154A/en
Application granted granted Critical
Publication of KR100856664B1 publication Critical patent/KR100856664B1/en

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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5072Grid computing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer And Data Communications (AREA)

Abstract

본 발명은 그리드(Grid) 기술 기반의 ASP 서비스 장치 및 그 서버 풀 할당 방법에 관한 것으로, 보다 상세하게는 응용 서비스의 유형에 따라 다수개의 서버 자원을 하나의 풀(pool)로 관리하고 할당형 응용 서비스와 비할당형 응용 서비스 제공 시에 고객의 서비스 요구 품질을 만족시켜주면서 서버 풀을 효율적으로 사용하는 기술이다. 이를 위해, 본 발명은 할당형 응용 서비스와 비할당형 응용 서비스의 처리를 수행하는 서버 풀과, 고객으로부터 응용 서비스 처리 요청을 입수하고 그 응용 서비스 처리 결과를 제공하는 응용 서비스부와, 응용 서비스 처리 요청에 따라, 응용 서비스 중 할당형 응용 서비스 제공 시에 할당형 응용 서비스를 제공중인 서버의 활용률 및 처리 부하량에 따라 서버를 동적으로 할당하고, 응용 서비스 중 비할당형 응용 서비스 제공 시에 비할당형 응용 서비스를 제공중인 서버의 작업 진행률을 이용하여 납기내 처리 완료 가능 여부를 판단하여 서버 자원을 동적으로 할당하는 응용 플랫폼부를 포함하여 구성함을 특징으로 한다.The present invention relates to an ASP service device based on Grid technology and a method for allocating a server pool thereof, and more particularly, to manage a plurality of server resources in a single pool according to the type of application service, and to allocate an application. It is a technology that efficiently uses the server pool while satisfying the quality of service requirements of customers when providing services and unallocated application services. To this end, the present invention provides a server pool for performing the processing of the allocated application service and the non-assigned application service, the application service unit that receives the application service processing request from the customer and provides the application service processing result, and the application service processing According to the request, the server is dynamically allocated according to the utilization rate and processing load of the server providing the allotted application service among the provisioned application services among the application services, and the non-allocated type when the application services are provided. It is characterized by including an application platform for dynamically allocating server resources by determining whether processing within the delivery date can be completed using the progress of the server providing the application service.

Description

그리드 기술 기반의 ASP 서비스 장치 및 그 서버 풀 할당 방법{SYSTEM FOR OFFERING APPLICATION SERVICE PROVIDER SERVICE IN GRID-BASE AND METHOD FOR ASSIGNING SERVER POOL THEREOF}ASP service device based on grid technology and server pool allocation method {SYSTEM FOR OFFERING APPLICATION SERVICE PROVIDER SERVICE IN GRID-BASE AND METHOD FOR ASSIGNING SERVER POOL THEREOF}

도 1은 본 발명의 실시예에 따른 그리드 기반의 ASP 서비스 장치의 구성도.1 is a block diagram of a grid-based ASP service apparatus according to an embodiment of the present invention.

도 2는 도 1의 서버 풀의 세부 구성도.FIG. 2 is a detailed configuration diagram of the server pool of FIG. 1. FIG.

도 3은 도 1의 ASP 서비스 장치의 서비스 제공 방법을 나타내는 순서도.3 is a flowchart illustrating a service providing method of the ASP service apparatus of FIG. 1.

도 4는 도 1의 ASP 서비스 장치의 할당형 응용 서비스 처리 순서도.FIG. 4 is a flowchart of an allocated application service processing process of the ASP service apparatus of FIG. 1. FIG.

도 5는 도 1의 ASP 서비스 장치의 비할당형 응용 서비스 처리 순서도.5 is a flow chart of an unassigned application service processing of the ASP service device of FIG.

*** 도면의 주요 부분에 대한 부호의 설명 ****** Explanation of symbols for the main parts of the drawing ***

100 : 응용서비스부 101 : 입수부100: Applied Service Department 101: Acquisition Department

102 : 식별부 103 : 스케줄 예약부102: identification unit 103: schedule reservation unit

104 : 결과 제공부 105 : 서비스 관리부104: result provider 105: service management unit

200 : 응용 플랫폼부 210 : 응용 처리부200: application platform unit 210: application processing unit

211 : 스케줄 설정부 212 : 작업분배부211: schedule setting unit 212: job distribution unit

213 : 프로비저닝부 214 : 예외처리부213: provisioning unit 214: exception handling unit

215 : 실행 제어부 216 : 자원관리부215: execution control unit 216: resource management unit

220 : 서비스 어댑터부 230 : 모니터링부220: service adapter unit 230: monitoring unit

300 : 서버 풀 301 : 할당형 서버 풀300: server pool 301: allocation server pool

302 : 비할당형 서버 풀 303 : 여유 서버 풀302: Unassigned Server Pool 303: Free Server Pool

400 : 스토리지 400: storage

본 발명은 그리드(Grid) 기술 기반의 ASP 서비스 장치 및 그 서버 풀 할당 방법에 관한 것으로, 보다 상세하게는 응용 서비스의 유형에 따라 다수개의 서버 자원을 하나의 풀(pool)로 관리하고 할당형 응용 서비스와 비할당형 응용 서비스 제공 시에 고객의 서비스 요구 품질을 만족시켜주면서 서버 풀을 효율적으로 사용하는 기술이다.The present invention relates to an ASP service device based on Grid technology and a method for allocating a server pool thereof, and more particularly, to manage a plurality of server resources in a single pool according to the type of application service, and to allocate an application. It is a technology that efficiently uses the server pool while satisfying the quality of service requirements of customers when providing services and unallocated application services.

일반적으로, 그리드 기술은 분산되어 있는 고성능 프로세서, 대용량 저장 장치, 어플리케이션, 데이터 등의 컴퓨팅 자원을 네트워크를 통하여 상호 공유할 수 있는 슈퍼 컴퓨팅 자원으로 가상화하는 기술로서, 특정 목적을 위해 전용으로 사용되고 있는 개별 컴퓨팅 자원을 통합하여 다양한 목적으로 활용할 수 있도록 하는 기술이다. In general, grid technology is a technology that virtualizes distributed computing resources such as high-performance processors, mass storage devices, applications, and data into supercomputing resources that can be shared with each other over a network. It is a technology that integrates computing resources and utilizes them for various purposes.

최근에는 과학 기술 분야 이외의 금융, 증권,제약 등의 일부 영역에서 기업 내부의 전산 자원을 그리드 기술로 공유하여 활용하는 시도가 진행되고 있으며 비지니스 영역에 그리드 기술을 접목하기 위한 노력이 진행중이다.Recently, in some areas such as finance, securities, and pharmaceuticals other than science and technology, attempts are being made to share and utilize the computational resources inside the enterprise as grid technology, and efforts are being made to integrate grid technology into business areas.

한편, ASP(Application Service Provider)는 통상적으로 소프트웨어 기반의 서비스 및 어플리케이션을 통신망을 통해 고객에게 배포하고 관리하는 서비스 제공업체를 의미한다.On the other hand, ASP (Application Service Provider) generally refers to a service provider that distributes and manages software-based services and applications to customers through a communication network.

기존의 ASP 사업 방식에서는 일정하기 않은 고객의 요청에 대비하여 최번시 응용 처리가 가능하도록 컴퓨팅 자원을 추가적으로 확보하여야 하므로 평상시 컴퓨팅 자원의 활용률은 매우 낮은 상태를 유지하는 반면 고객의 요청이 급증하거나 응용 처리를 위한 계산이 많이 필요한 경우에는 효과적으로 서비스를 제공하기가 곤란하게 된다.In the conventional ASP business method, additional computing resources must be secured so that application processing can be performed in a timely manner in response to an unscheduled request of the customer. Therefore, the utilization rate of the computing resources is maintained at a very low level. If a lot of calculations are needed, it is difficult to effectively provide a service.

종래에는 응용 어플리케이션 설치를 비롯한 컴퓨팅 자원에 대한 관리를 서버 관리자의 수작업에 의존하고 전용의 컴퓨팅 자원을 통하여 응용 요청을 처리하도록 하였다.Conventionally, management of computing resources including application application installation is relied on by a server administrator's manual work, and application requests are handled through dedicated computing resources.

따라서, 다양한 응용 어플리케이션을 관리하고 필요할 때마다 즉각적으로 서버 자원의 응용 서비스 처리 환경을 구성하여 서비스를 하기에는 적합하지 않아 그리드 기술에 기반하여 응용 서비스를 제공하는 것이 현실적으로 불가능하였다.Therefore, it is not practical to manage various application applications and construct an application service processing environment of server resources immediately when needed, and thus it is not practical to provide application services based on grid technology.

또한, 종래에는 응용 서비스 별로 전용의 서버 자원을 할당하여 사용하도록 함으로써 서버 활용률이 낮은 문제점이 있었다.In addition, the conventional server has a problem that the utilization rate of the server is low by allocating dedicated server resources for each application service.

즉, 종래에는 일정하지 않은 고객의 요청에 대비하여 최번시 요청에도 서비스 제공이 가능하도록 서버 자원을 충분히 구성해두게 되므로, 서버 자원이 많이 필요하지 않은 서비스 제공 시에는 불필요한 서버 자원까지 구성해두어 서버 자원의 낭비를 초래하는 반면, 고성능 연산이 요구되어 서버 자원이 많이 필요한 경우에는 구성해둔 서버 자원만으로 그 서비스를 충분히 제공할 수 없게 되는 문제점이 있었다.That is, conventionally, since the server resources are sufficiently configured to provide the service even at the time of the request in preparation for the unscheduled request of the customer, when the service is provided that does not require a lot of server resources, the server is configured with unnecessary server resources. On the other hand, it causes a waste of resources, when a high performance operation is required a lot of server resources, there is a problem that can not provide enough of the service only the server resources configured.

상기한 요구에 부응하기 위해 창출되어진 본 발명의 목적은, 그리드 기술을 기반으로 ASP 서비스를 제공하는 경우 서버 자원을 가상화된 공유 서버 풀 형태로 관리하고 워크로드(work-load)의 크기에 따라 가변적으로 서버 자원을 할당하여 고객의 서비스 품질을 만족하는 동시에 서버 활용률을 증가시키는데 있다.An object of the present invention, which is created to meet the above-mentioned demands, is to manage server resources in the form of a virtualized shared server pool when providing ASP services based on grid technology, and vary according to the size of the workload. By allocating server resources, we can satisfy the service quality of our customers and increase server utilization.

또한, 본 발명의 다른 목적은 할당형 응용 서비스 요청시 가변 부하에 대응하여 가변적으로 서버를 할당하고, 비할당형 응용 서비스 요청 시 고객과 약속한 납기를 맞추도록 서버를 할당하는데 있다.In addition, another object of the present invention is to allocate a server variably in response to a variable load when requesting an allocated application service, and to meet a delivery date promised to a customer when requesting an unassigned application service.

상기한 바와 같은 목적을 달성하기 위한 본 발명에 따른 그리드 기반의 ASP 서비스 장치는, 응용 서비스의 처리를 수행하는 복수의 서버로 구성된 서버 풀과, 고객으로부터 상기 응용 서비스 처리 요청을 입수하고 그 응용 서비스 처리 결과를 제공하는 응용 서비스부와, 상기 응용 서비스 처리 요청에 따라, 상기 응용 서비스 중 할당형 응용 서비스 제공 시에 상기 할당형 응용 서비스를 제공중인 서버의 활용률 및 처리 부하량에 따라 서버를 동적으로 할당하고, 상기 응용 서비스 중 비할당형 응용 서비스 제공 시에 상기 비할당형 응용 서비스를 제공중인 서버의 작업 진행률을 이용하여 납기내 처리 완료 가능 여부를 판단하여 서버 자원을 동적으로 할당하는 응용 플랫폼부를 포함하여 구성함을 특징으로 한다.Grid-based ASP service apparatus according to the present invention for achieving the object as described above, the server pool consisting of a plurality of servers for performing the processing of the application service, the application service processing request from the customer to obtain the application service The server dynamically allocates a server according to the utilization rate and processing load of an application service unit providing a processing result and a server providing the allocated application service when the application service is allocated among the application services according to the application service processing request. And an application platform unit for dynamically allocating server resources by determining whether the processing can be completed within the delivery period by using a task progress rate of the server providing the unassigned application service when the unassigned application service is provided among the application services. It is characterized by the configuration.

또한, 본 발명에 따른 그리드 기반의 ASP 서비스 장치에서의 서버 풀 할당 방법은, 할당형 응용 서비스 제공 중인 서버 활용률 및 처리 부하량을 모니터링하여 서버의 추가, 제거, 유지를 판단하는 제 1 과정과, 상기 서버를 추가해야 하는 경우 상기 할당형 응용 서비스를 제공중인 할당형 응용 서비스용 서버 풀 내에 가용 서버 자원이 존재하는 지를 판단하여 상기 가용 서버 자원이 존재하는 경우 상기 가용 서버 자원을 이용하여 상기 할당형 응용 서비스를 계속하여 제공하는 제 2 과정과, 상기 서버를 제거해야 하는 경우 상기 제공중인 할당형 응용 서비스의 제공을 중지하고 해당 서버를 가용 서버 자원으로 표시하는 제 3 과정을 포함하여 구성함을 특징으로 한다.In addition, the server pool allocation method in the grid-based ASP service apparatus according to the present invention, the first step of determining the addition, removal, maintenance of the server by monitoring the server utilization rate and processing load providing the allocated application service, and In case of adding a server, it is determined whether an available server resource exists in a server pool for an allocated application service that is providing the allocated application service, and when the available server resource exists, the allocated application using the available server resource. And a second process of continuously providing a service, and a third process of stopping the provision of the allocated allotted application service and marking the server as an available server resource when it is necessary to remove the server. do.

또한, 본 발명에 따른 그리드 기반의 ASP 서비스 장치에서의 서버 풀 할당 방법은, 비할당형 응용 서비스 제공 중인 서버의 처리 진행률을 모니터링 하는 제 1 과정과, 상기 처리 진행률과 서버 자원 정보를 이용하여 상기 비할당형 응용 서비스 처리 예상 소요 시간을 계산하고 상기 계산 결과를 이용하여 상기 비할당형 응용 서비스를 납기 내 완료할 수 있는 지를 판단하는 제 2 과정과, 상기 납기내 완료가 불가능한 경우, 상기 비할당형 응용 서비스를 제공하는 비할당형 응용 서비스용 서버 풀 내의 가용 서버 자원을 이용하여 상기 비할당형 응용 서비스를 납기내 처리하도록 하는 제 3 과정을 포함하여 구성함을 특징으로 한다.In addition, the server pool allocation method in the grid-based ASP service apparatus according to the present invention, the first process of monitoring the progress of the server providing the unassigned application service, the process using the processing progress and server resource information A second process of calculating an estimated time required for processing of an unassigned application service and determining whether the unassigned application service can be completed on time using the result of the calculation; And a third process of processing the unallocated application service in a deadline by using available server resources in a server pool for an unallocated application service that provides a type application service.

상술된 구성을 갖는 본 발명의 그리드 기반의 ASP 서비스 장치의 서버 할당 방법을 이용한 실시예를 설명하면 다음과 같다.An embodiment using the server allocation method of the grid-based ASP service apparatus of the present invention having the above-described configuration is as follows.

도 1은 본 발명의 실시예에 따른 그리드 기반의 ASP 서비스 장치의 구성도이다. 1 is a block diagram of a grid-based ASP service apparatus according to an embodiment of the present invention.

본 발명의 그리드 기반의 ASP 서비스 장치는 응용서비스부(100), 응용 플랫폼부(200), 서버 풀(300), 및 스토리지(400)를 포함하여 구성한다.The grid-based ASP service apparatus of the present invention includes an application service unit 100, an application platform unit 200, a server pool 300, and a storage 400.

응용서비스부(100)는 그리드 ASP 서비스 제공자로부터 응용 서비스에 대한 서비스 제공 정책을 입수하여 서비스 룰(rule)을 설정하고, 응용 어플리케이션을 입수하여 스토리지(400)에 저장하고 검색 디렉토리를 설정함으로써 서비스 제공을 위한 기본 설정을 수행한 후, 고객으로부터 응용 서비스 처리 요청이 발생되면 응용 서비스 처리 요청을 입수 및 식별하고 그 응용 서비스 처리 스케줄을 예약하고, 응용 플랫폼부(200)를 통해 응용 서비스 처리된 결과를 고객에게 제공한다. The application service unit 100 obtains a service provision policy for an application service from a grid ASP service provider, sets a service rule, obtains an application application, stores it in the storage 400, and sets a search directory. After performing the basic setting for, if the application service processing request is generated from the customer, obtain and identify the application service processing request, schedule the application service processing schedule, and the application platform processing result through the application platform unit 200 Provide to customers.

이때, 서비스 제공 정책은 응용 서비스 종류, 서비스 처리 등급, 최소 서버 사양, 최소 메모리 용량, OS(operating system) 종류 등을 포함한다. 여기서, 응용서비스부(100)는 포털 사이트 등과 같이 제공되어 고객이 용이하게 요청하고 그 결과를 제공받을 수 있도록 하는 것이 바람직하다.In this case, the service provision policy includes an application service type, a service processing class, a minimum server specification, a minimum memory capacity, and an operating system (OS) type. Here, the application service unit 100 is preferably provided such as a portal site so that customers can easily request and receive the results.

이를 위해, 응용서비스부(100)는 입수부(101), 식별부(102), 스케줄 예약부(103), 결과 제공부(104), 및 서비스 관리부(105)를 포함하여 구성한다. To this end, the application service unit 100 includes an acquisition unit 101, an identification unit 102, a schedule reservation unit 103, a result providing unit 104, and a service management unit 105.

입수부(101)는 고객으로부터 응용 서비스 처리 요청을 입수하고 식별부(102)에 전달한다. The acquisition unit 101 obtains an application service processing request from a customer and transmits it to the identification unit 102.

식별부(102)는 입수부(101)로부터 전달받은 응용 서비스의 종류(할당형, 비할당형), 서비스 처리등급(납기(처리 완료 희망시간) 지정, 납기 미지정), 서버 소요 사양, 메모리 용량, 스토리지 소요량, 및 예상 처리 소요 시간을 식별하여 해당 응용 요청을 처리하기 위한 프로파일(profile)을 생성한다. 여기서, 응용 서비스의 종류 중 할당형 응용 서비스는 지속적인 서비스 제공을 위하여 전용의 서버 할당이 필요한 서비스를 의미하고, 비할당형 응용 서비스는 응용 요청에 대한 처리 시간 동안만 서버를 사용하게 되어 서버 할당이 불필요한 서비스를 의미한다. Identification unit 102 is the type of application services received from the acquisition unit 101 (assignment type, unassigned type), service processing class (delivery date (designated delivery time desired), delivery date not specified), server requirements, memory capacity , Storage requirements, and estimated processing time are identified to create a profile for processing the application request. Here, among the types of application services, an allocated application service means a service that requires a dedicated server allocation to provide a continuous service, and an unassigned application service uses a server only for processing time of an application request. It means unnecessary services.

스케줄 예약부(103)는 응용 서비스 처리부(210)의 스케줄 설정부(211)와 연동하여 응용 요청을 처리하기 위한 스케줄을 미리 예약설정한다. The schedule reservation unit 103 pre-sets a schedule for processing an application request in cooperation with the schedule setting unit 211 of the application service processing unit 210.

결과 제공부(104)는 응용 플랫폼부(200)를 통해 그리드 기술 기반으로 처리된 응용 서비스 처리 결과를 고객에게 제공한다. The result providing unit 104 provides the customer with the application service processing result processed based on the grid technology through the application platform unit 200.

서비스 관리부(105)는 응용 서비스 제공을 위해 최초 응용 어플리케이션과 서비스 제공 정책을 스토리지(400)에 등록하고 응용 서비스의 관리를 수행한다.The service manager 105 registers an initial application application and a service provision policy in the storage 400 to provide an application service and manages the application service.

응용 플랫폼부(200)는 응용 서비스의 종류에 따라 처리 원본 데이터 단위를 분할 또는 병합하고 서버 풀의 가용 서버 자원을 고려하여 처리 스케줄을 설정하며 스케줄에 따라 서버 자원 구성, 작업 분배, 모니터링을 담당한다. 이를 위해, 응용 플랫폼부(200)는 응용 처리부(210), 서비스 어댑터부(220), 및 모니터링부(230)를 구비한다. The application platform unit 200 divides or merges the processing source data unit according to the type of application service, sets a processing schedule in consideration of available server resources of the server pool, and is responsible for configuring server resources, distributing work, and monitoring according to the schedule. . To this end, the application platform 200 includes an application processor 210, a service adapter 220, and a monitoring unit 230.

응용 처리부(210)는 응용 서비스부(100)로부터 응용 서비스 처리 요청이 있는 경우 해당 요청 서비스의 종류에 따라 서버 풀(300)을 이용하여 응용 서비스 처리를 수행을 위한 스케줄 설정, 작업 분배, 및 프로비저닝(provisioning) 기능 등을 수행한다. 이를 위해, 응용 처리부(210)는 스케줄 설정부(211), 작업분배부(212), 프로비저닝부(213), 예외처리부(214), 실행제어부(215), 및 자원관리부(216)를 구비한다. If there is an application service processing request from the application service unit 100, the application processing unit 210 sets a schedule, distributes work, and provisions for performing application service processing using the server pool 300 according to the type of the requested service. (provisioning) function, etc. To this end, the application processing unit 210 includes a schedule setting unit 211, a job distribution unit 212, a provisioning unit 213, an exception processing unit 214, an execution control unit 215, and a resource management unit 216. .

스케줄 설정부(211)는 스케줄 예약부(103)와 연동되어 처리 스케줄을 설정하고, 작업분배부(212)는 스케줄에 따라 서버 자원을 할당하고 작업을 분배하며, 프로비저닝부(213)는 서버 풀의 서버 자원의 실행 환경을 동적으로 구성하고 관리하고, 예외처리부(214)는 처리 과정에서 발생하는 예외상황을 처리하며, 실행제어부(215)는 각 구성요소(211~216)의 구동을 제어하고 세부 작업 처리 순서 확인, 병렬 처리 여부 판단 등을 수행하며, 자원관리부(216)는 스케줄 표, 서버 자원 할당 정보, 서버 자원 작업 상태 등을 저장한다.The schedule setting unit 211 establishes a processing schedule in conjunction with the schedule reservation unit 103, the job distribution unit 212 allocates server resources and distributes jobs according to a schedule, and the provisioning unit 213 is a server pool. Dynamically configure and manage the execution environment of the server resources of the exception, the exception processing unit 214 handles exceptions that occur during processing, the execution control unit 215 controls the operation of each component (211 ~ 216) The detailed job processing order check and parallel processing are performed. The resource manager 216 stores a schedule table, server resource allocation information, server resource work status, and the like.

특히, 실행제어부(215)는 모니터링부(230)의 모니터링 결과를 이용하여, 서비스 처리 부하량이 적정한 수준이면 서버를 현상유지하고, 서비스 처리 부하량이 적고 서버 활용률이 낮은 경우 일부 서버를 제거하고, 서비스 처리 부하량이 일정 수준 이상이고 서버 활용률도 높은 경우 서버를 추가 증설하도록 한다.In particular, the execution controller 215 uses the monitoring result of the monitoring unit 230 to maintain the server if the service processing load is an appropriate level, and to remove some servers when the service processing load is low and the server utilization is low, If the processing load is above a certain level and the server utilization rate is high, additional servers should be added.

예를 들면, 할당형 응용 서비스는 CDN(CONTENTS DELIVERY NETWORK)서비스, 콘텐츠 다운로드, 미디어 스트리밍 등과 같이 사용자의 서비스 요청량이 시간에 따라 가변적인 서비스를 포함하고 할당형 응용 서비스를 위한 서버 자원을 일정수 이상 미리 전용 서버로 할당해둔다. 이러한 할당형 응용 서비스는 서버 자원이 정해져 있어, 사용자가 많이 몰리는 시간대에는 부하량이 많아져 그 서버가 부족하게 될 수 있다. 이에, 본 발명의 실행제어부(215)는 할당형 응용 서비스 제공 시에 가변적인 트래픽에 대응하여 동적으로 서버 자원을 할당하도록 제어 한다.For example, the Allocate Application Service includes services that the user's request volume varies over time, such as CDN (CONTENTS DELIVERY NETWORK) service, content download, media streaming, etc., and more than a certain number of server resources for the Allocate Application Service. Assign to a dedicated server in advance. Such an allocated application service has a fixed server resource, and the server may be insufficient due to a heavy load during a crowded time. Accordingly, the execution control unit 215 of the present invention controls to dynamically allocate server resources in response to variable traffic when providing an allocated application service.

한편, 비할당형 응용 서비스로는 그래픽 랜더링, 미디어 파일의 인코딩 서비스 등이 포함되며 병렬 연산 작업이 많이 요구되는 응용 서비스들을 포함하고, 이 러한 비할당형 응용 서비스는 고객이 지정한 납기 내에 완료되도록 하는 것이 중요하다. 이에, 본 발명의 실행제어부(215)는 모니터링부(230)를 통해 모니터링한 서버 자원의 작업 진행률을 이용하여 비할당형 응용 서비스 처리를 위한 예상 소요 시간을 계산하여 그 결과에 따라 서버 자원을 추가함으로써 해당 응용 서비스를 납기내 처리할 수 있도록 제어한다.On the other hand, unassigned application services include graphics rendering, media file encoding services, and the like, and include application services that require a lot of parallel computation. Such unassigned application services can be completed within a delivery date specified by a customer. It is important. Accordingly, the execution control unit 215 of the present invention calculates the estimated time required for processing the unallocated application service using the progress of the server resources monitored by the monitoring unit 230 and adds server resources according to the result. This controls the application service to be processed on time.

서비스 어댑터부(220)는 복수개의 서버를 이용하여 병렬처리해야 하는 경우 응용 서비스 처리 작업을 세부 작업 단위로 분할하거나 병렬처리된 단위 작업 처리 결과를 병합한다.The service adapter unit 220 divides an application service processing job into detailed job units or merges the parallel job processing results when it is necessary to perform parallel processing using a plurality of servers.

모니터링부(230)는 서버 자원의 작업 진행 상태, 서버 자원 현황, 및 과금정보 등을 모니터링하고 그 처리 결과를 스토리지(400) 및 결과 제공부(104)에 전달한다.The monitoring unit 230 monitors the work progress status of the server resources, the server resource status, the billing information, and the like, and transmits the processing result to the storage 400 and the result providing unit 104.

서버 풀(300)은 서버 자원을 가상의 공유 자원으로 관리하고 응용의 종류에 따라 어플리케이션을 실행한다. 이를 위해, 서버 풀(300)은 할당형 서버 풀(301), 비할당형 서버 풀(302), 및 여유 서버 풀(303)을 구비한다.The server pool 300 manages server resources as virtual shared resources and executes applications according to types of applications. To this end, the server pool 300 includes an allocated server pool 301, an unassigned server pool 302, and a spare server pool 303.

도 2를 참조하여 서버 풀(300)의 구성을 구체적으로 설명하기로 한다.The configuration of the server pool 300 will be described in detail with reference to FIG. 2.

먼저, 할당형 서버 풀(301)은 할당형 응용 서비스를 위해 미리 할당된 서버자원을 포함한다. 예를 들면, CDN 서비스의 처리를 위해 할당형 서버 풀1 또는 할당형 서버 풀1 내의 일정 수의 서버 자원이 할당되고, 미디어 스트리밍 서비스의 처리를 위해 할당형 서버 풀2 또는 할당형 서버 풀2 내의 일정 수의 서버 자원이 할당된다. 또한, 할당형 서버 풀(301)은 고객으로부터 가변적인 서버 제공을 요청 받는 경우, 평소에는 최소의 서버 자원을 사용하여 서비스를 제공하다가 사용자가 많이 몰리는 시간대에는 부하량에 대응하여 동적으로 서버 자원을 할당하여 가변적인 부하를 효율적으로 처리할 수 있도록 하는 것이 바람직하다.First, the assignable server pool 301 includes server resources pre-allocated for the allocated application service. For example, a certain number of server resources in allocated server pool 1 or allocated server pool 1 are allocated for the processing of the CDN service, and allocated server pool 2 or allocated server pool 2 in the processing of the media streaming service. A certain number of server resources are allocated. In addition, when the server pool 301 receives a variable server request from a customer, the server server normally provides a service using a minimum amount of server resources, and dynamically allocates server resources in response to a load during a busy time. It is desirable to be able to efficiently handle the variable load.

비할당형 서버 풀(302)은 비할당형 응용 서비스를 위한 서버 자원을 포함하며 고객이 요청한 작업 데이터의 크기 또는 서비스 제공에 따른 서버 사용량에 따라 비할당형 서버 풀(302) 내의 서버 자원들을 그때그때 할당하여 사용할 수 있도록 한다. 또한, 비할당형 서버 풀(302)은 고객으로부터 처리완료 희망 시간이 요구되는 비할당형 응용 서비스에 대하여 처리 완료 희망시간에 따라 서버 자원을 동적으로 할당하여 처리할 수 있도록 한다.Unassigned server pool 302 includes server resources for unassigned application services and then allocates server resources in unassigned server pool 302 according to the amount of work data requested by the customer or server usage as a result of service provision. Then assign it and use it. In addition, the unassigned server pool 302 may dynamically allocate and process server resources in accordance with the desired processing completion time for an unallocated application service requiring processing completion desired time from a customer.

여유 서버 풀(303)은 할당형 서버 풀(301) 및 비할당형 서버 풀(302)과 별도의 서버 자원을 확보해둠으로써, 할당형 서버 풀(301) 및 비할당형 서버 풀(302)의 서버자원이 부족한 경우 여유 서버 풀(303) 내의 서버 자원을 제공한다.The spare server pool 303 reserves server resources separate from the assigned server pool 301 and the unassigned server pool 302, thereby assigning the assigned server pool 301 and the unassigned server pool 302. When the server resources of the server is insufficient, the server resources in the free server pool 303 are provided.

스토리지(400)는 응용 어플리케이션 및 서비스 제공 정책을 저장하고 응용 서비스 처리 과정의 데이터를 저장하며 응용 요청에 대한 원본 데이터 및 중간 또는 최종 결과를 저장한다.The storage 400 stores application application and service provision policies, stores data of application service processing, and stores original data and intermediate or final results for application requests.

이하, 도 3 내지 도 5을 참조하여, 본 발명의 실시예에 따른 그리드 기술 기반 ASP 서비스 장치의 서비스 제공 방법을 설명하기로 한다.Hereinafter, a method of providing a service of a grid technology based ASP service apparatus according to an embodiment of the present invention will be described with reference to FIGS. 3 to 5.

도 3은 도 1의 ASP 서비스 장치의 서비스 제공 방법을 나타내는 순서도이다.3 is a flowchart illustrating a service providing method of the ASP service apparatus of FIG. 1.

고객으로부터 응용 서비스 처리 요청이 입수부(101)를 통해 입수되면, 입수부(101)는 응용 서비스 처리 요청을 식별부(102)로 전달하고 식별부(102)는 응용 서비스 처리 요청된 서비스의 내용을 식별하여, 응용서비스의 종류(할당형, 비할당형), 서비스 처리등급(납기 지정, 납기 미지정), 서버 소요 사양, 메모리 용량, 스토리지 소요량, 및 예상 처리 소요 시간을 식별한다(S100). When the application service processing request from the customer is obtained through the acquisition unit 101, the acquisition unit 101 transmits the application service processing request to the identification unit 102, the identification unit 102 is the content of the service requested application service processing Identify the type of application service (allocation type, non-allocation type), service processing class (delivery date designation, delivery date not specified), server requirements, memory capacity, storage requirements, and estimated processing time required (S100).

그 후, 스케줄 예약부(103)는 식별된 서비스 종류별 서비스 등급, 병렬처리 수준, 및 서버 사양 스토리지 사용량 등에 따라 응용 서비스 처리의 우선순위를 설정하고 스케줄 설정부(211)와 연동하여 스케줄을 예약한다(S200). Thereafter, the schedule reservation unit 103 sets the priority of the application service processing according to the identified service type for each service type, parallel processing level, server specification storage usage, etc. and schedules the schedule in conjunction with the schedule setting unit 211. (S200).

이어서, 실행제어부(215)는 예약된 스케줄에 따라 해당 요청된 서비스의 종류를 판단하여(S300), 그 서비스 종류에 따라 응용 서비스 처리를 수행한다(S400, S500). 즉, 상기 과정 S300의 판단 결과, 요청된 응용 서비스가 서버 할당형 응용 서비스에 속하는 경우 할당형 처리를 수행하고(S400), 요청된 응용 서비스가 서버 비할당형 응용 서비스에 속하는 경우 비할당형 처리를 수행한다(S500). 즉, 응용 처리부(210)에서 응용 서비스 유형에 따라 응용 서비스 처리 작업을 서버 자원에 할당하고 분배하여 그리드 기술 기반의 ASP 서비스를 처리한다. 상기 과정 S400의 할당형 처리와 S500의 비할당형 처리 시의 서버 할당 방법은 추후 도 4 및 도 5를 통해 구체적으로 설명하기로 한다.Subsequently, the execution controller 215 determines the type of the requested service according to the reserved schedule (S300), and performs application service processing according to the service type (S400, S500). That is, as a result of the determination in step S300, if the requested application service belongs to the server-allocated application service, the allocated-type processing is performed (S400), and if the requested application service belongs to the server-unassigned application service, the unassigned processing is performed. Perform (S500). That is, the application processing unit 210 allocates and distributes application service processing tasks to server resources according to application service types to process grid technology based ASP services. The method of allocating the server during the allocation process of the process S400 and the non-allocation process of S500 will be described in detail later with reference to FIGS. 4 and 5.

그 후, 요청된 응용 서비스에 대한 할당형 또는 비할당형 처리가 완료되면 응용 서비스 처리 결과를 고객에게 통보한다(S600). Thereafter, when the allocated or unassigned processing for the requested application service is completed, the customer is notified of the application service processing result (S600).

이하, 도 4를 참조하여 할당형 응용 서비스 제공 시의 서버 자원 할당 방법을 상세히 설명하기로 한다. 특히, 도 4는 할당형 응용 서비스 제공 시 가변적으로 서버를 할당하여 작업 처리 시의 서비스 품질을 보장할 수 있는 방법을 나타낸다. Hereinafter, a method of allocating server resources when providing an allocated application service will be described in detail with reference to FIG. 4. In particular, FIG. 4 illustrates a method of guaranteeing a quality of service at the time of job processing by variably allocating a server when providing an allocated application service.

먼저, 할당형 응용 서비스는 할당형 서버 풀(301)내의 할당된 서버 자원을 이용하여 제공된다. 이러한 할당형 응용 서비스를 제공 중에 모니터링부(230)는 서비스 제공중인 서버 활용률 및 처리 부하량을 모니터링하여(S401), 실행제어부(215)는 서버를 추가할지, 제거할지, 현상 유지할지를 판단한다(S402). 즉, 실행제어부(215)는 모니터링부(230)의 모니터링 결과를 이용하여, 서비스 처리 부하량 및 서버 활용률이 제1임계치와 제2임계치의 범위내에 존재하면 상기 할당형 응용 서비스를 제공하는 서버의 갯수를 현상유지하고, 상기 서비스 처리 부하량 및 처리 부하량이 상기 제2임계치 이상이면 상기 할당형 응용 서비스를 제공하는 서버의 갯수의 증가시키기 위해 서버를 추가 증설하고, 상기 서비스 처리 부하량 및 처리 부하량이 상기 제1임계치 이하이면 상기 할당형 응용 서비스를 제공하는 서버의 갯수를 감소시키기 위해 운용중인 서버 중 일부 서버를 제거하도록 한다.Initially, allocated application services are provided using the allocated server resources in the allocated server pool 301. During the provision of such an allocated application service, the monitoring unit 230 monitors the server utilization rate and processing load during service provision (S401), and the execution control unit 215 determines whether to add, remove, or maintain the server (S402). ). That is, the execution control unit 215 uses the monitoring result of the monitoring unit 230, and if the service processing load and the server utilization rate are within the range of the first threshold value and the second threshold value, the number of servers that provide the allocated application service. If the service processing load and processing load is greater than or equal to the second threshold, additional servers are added to increase the number of servers that provide the allocated application service, and the service processing load and processing load are If the threshold is less than 1, some servers in operation may be removed to reduce the number of servers providing the allocated application service.

상기 과정 S402의 판단 결과, 서버를 제거해야 하는 경우 실행제어부(215)는 응용 서비스를 제공 중인 서버 풀(301) 내의 서버자원의 구동을 중지시키고(S403), 해당 서버 자원을 가용 서버 자원으로 스케줄표에 표시한다(S404).When it is determined in step S402 that the server needs to be removed, the execution control unit 215 stops driving server resources in the server pool 301 providing the application service (S403) and schedules the corresponding server resources as available server resources. In the table (S404).

상기 과정 S402의 판단 결과, 서버를 추가해야 하는 경우 실행제어부(215)는 응용 서비스를 제공중인 해당 서비스용 서버 풀(301) 내에 가용 서버 자원이 존재하는 지를 판단한다(S405).As a result of the determination in step S402, when it is necessary to add a server, the execution control unit 215 determines whether there is an available server resource in the server pool 301 for providing the application service (S405).

상기 과정 S405의 판단 결과, 해당 서비스용 서버 풀(301) 내에 가용 서버 자원이 존재하지 않는 경우, 실행제어부(215)는 여유 서버 풀(303) 내에 가용 서버 자원이 존재하는 지를 판단하고(S406), 여유 서버 풀(303) 내에도 가용 서버 자원이 존재하지 않는 경우에는 결과제공부(104)를 통해 운용자에게 서버 증설의 필요성을 통보한다(S407).As a result of the determination in step S405, when no available server resource exists in the service server pool 301, the execution controller 215 determines whether there is available server resource in the free server pool 303 (S406). If the available server resources do not exist even in the free server pool 303, the result provider 104 notifies the operator of the necessity of expanding the server (S407).

한편, 상기 과정 S405의 판단 결과 해당 서비스용 서버 풀(301) 내에 가용 서버 자원이 존재하는 경우와 상기 과정 S406의 판단 결과 여유 서버 풀(303) 내에 가용 서버 자원이 존재하는 경우, 실행 제어부(215)는 해당 가용 서버 자원에 대하여 서버 프로비저닝이 필요한지를 판단한다(S408). On the other hand, when the available server resources exist in the service server pool 301 as a result of the determination in step S405 and the available server resources exist in the spare server pool 303 as a result of the determination in step S406, the execution control unit 215 ) Determines whether server provisioning is necessary for the available server resource (S408).

즉, 실행제어부(215)는 해당 가용 서버 자원에 해당 할당형 응용 서비스를 제공하기 위한 어플리케이션이 설치되었는지를 판단하여 어플리케이션이 설치되지 않은 경우 프로비저닝이 필요한 것으로 판단하고 어플리케이션이 설치되어 있는 경우에는 프로비저닝이 필요없는 것으로 판단한다. 이때, 실행제어부(215)는 가용 서버 자원에 대한 정보를 스케줄표에 반영하도록 하는 것이 바람직하다.That is, the execution control unit 215 determines whether an application for providing the allocated application service is installed in the available server resource, and determines that provisioning is required if the application is not installed, and provisioning is performed if the application is installed. I do not think it is necessary. At this time, the execution control unit 215 preferably reflects the information on the available server resources in the schedule table.

상기 과정 S408의 판단 결과, 서버 프로비저닝이 필요하지 않은 경우, 해당 서버 자원을 이용하여 할당형 응용 서비스를 처리하고(S410), 서버 프로비저닝이 필요한 경우 프로비저닝부(213)를 통해 해당 서버 자원에 대하여 서버 작업 환경을 구성하고 어플리케이션을 설치한 후(S409), 해당 응용 서비스를 처리하도록 한다(S410).As a result of the determination in step S408, if server provisioning is not required, the server allocates an application service using the corresponding server resource (S410), and if server provisioning is required, the server for the server resource through the provisioning unit 213. After configuring a work environment and installing an application (S409), the application service is processed (S410).

이와같이, 본 발명은 할당형 응용 서비스 제공 시에, 고객이 최소의 고정된 전용의 서버 수를 초기에 지정하더라도 가변적인 부하를 고려하여 트래픽 양에 따라 서버를 가변적으로 할당하여 제공하도록 함으로써 가변적인 부하를 효율적으로 처리할 수 있다. As described above, the present invention provides a variable load by providing a variable allocation of servers according to the traffic amount in consideration of the variable load even when a customer initially specifies the minimum fixed dedicated server number when providing an allocated application service. Can be efficiently processed.

이하, 도 5를 참조하여 비할당형 응용 서비스 제공 시의 서버 자원 할당 방법을 상세히 설명하기로 한다.Hereinafter, a method of allocating server resources when providing an unallocated application service will be described in detail with reference to FIG. 5.

먼저, 비할당형 응용 서비스 제공 시에 모니터링부(230)는 서비스 제공중인 서버의 작업 처리 진행률을 모니터링하여 해당 서비스의 처리 소요 시간을 계산한다(S501).First, when providing an unassigned application service, the monitoring unit 230 calculates a processing time required for a corresponding service by monitoring a work processing progress rate of a server providing a service (S501).

상기 과정 S501의 계산 결과, 해당 응용 서비스를 납기(처리 완료 희망 시간)내에 완료 가능한지를 판단하여(S502), 납기내 가능한 경우에는 그대로 진행하고 납기내 불가능한 경우 서버를 추가 할당하기 위해 해당 서비스용 서버 풀(302) 내에 가용 서버 자원이 존재하는 지를 판단한다(S503).As a result of the calculation in step S501, it is determined whether the corresponding application service can be completed within the delivery date (process completion desired time) (S502), and if it is possible within the delivery date, proceed as it is and if the server for the service for additional allocation is impossible It is determined whether there is an available server resource in the pool 302 (S503).

상기 과정 S503의 판단 결과, 해당 서비스용 서버 풀(302) 내에 가용 서버 자원이 존재하지 않는 경우, 실행제어부(215)는 여유 서버 풀(303) 내에 가용 서버 자원이 존재하는 지를 판단하고(S504), 여유 서버 풀(303) 내에도 가용 서버 자원이 존재하지 않는 경우에는 결과제공부(104)를 통해 운용자에게 서버 증설의 필요성을 통보한다(S505).As a result of the determination in step S503, when no available server resource exists in the service server pool 302, the execution controller 215 determines whether there is available server resource in the free server pool 303 (S504). If the available server resources do not exist even in the free server pool 303, the result provider 104 notifies the operator of the necessity of server expansion (S505).

한편, 상기 과정 S503의 판단 결과 해당 서비스용 서버 풀(302) 내에 가용 서버 자원이 존재하는 경우와 상기 과정 S504의 판단 결과 여유 서버 풀(303) 내에 가용 서버 자원이 존재하는 경우, 실행 제어부(215)는 해당 가용 서버 자원에 대하여 서버 프로비저닝이 필요한지를 판단한다(S506). On the other hand, when the available server resources exist in the service server pool 302 as a result of the determination in step S503, and the available server resources exist in the spare server pool 303 as a result of the determination in step S504, the execution control unit 215 ) Determines whether server provisioning is necessary for the available server resource (S506).

즉, 실행제어부(215)는 해당 가용 서버 자원에 해당 할당형 응용 서비스를 제공하기 위한 어플리케이션이 설치되었는지를 판단하여 어플리케이션이 설치되지 않은 경우 프로비저닝이 필요한 것으로 판단하고 어플리케이션이 설치되어 있는 경우에는 프로비저닝이 필요없는 것으로 판단한다. 이때, 실행제어부(215)는 가용 서 버 자원에 대한 정보를 스케줄표에 반영하도록 하는 것이 바람직하다.That is, the execution control unit 215 determines whether an application for providing the allocated application service is installed in the available server resource, and determines that provisioning is required if the application is not installed, and provisioning is performed if the application is installed. I do not think it is necessary. At this time, the execution control unit 215 is preferably to reflect the information on the available server resources in the schedule table.

상기 과정 S506의 판단 결과, 서버 프로비저닝이 필요하지 않은 경우, 해당 서버 자원을 이용하여 할당형 응용 서비스를 처리하고(S508), 서버 프로비저닝이 필요한 경우 프로비저닝부(213)를 통해 해당 서버 자원에 대하여 서버 작업 환경을 구성하고 어플리케이션을 설치한 후(S507), 해당 응용 서비스를 처리하도록 한다(S508).As a result of the determination in step S506, when server provisioning is not necessary, an allocated application service is processed using the corresponding server resource (S508), and when server provisioning is required, the server is provided with respect to the corresponding server resource through the provisioning unit 213. After configuring a work environment and installing an application (S507), the application service is processed (S508).

도 5에서와 같이, 본 발명은 비할당형 응용 서비스 제공 시에 고객이 서비스 처리 등급(납기(처리 완료 희망 시간) 지정, 납기 미지정)을 지정하고 고객이 요구하는 처리 완료 시간내에 작업이 완료되도록 한다. 이를 위해, 실행제어부(215)는 작업 처리 스케줄 표에 따른 서버 자원의 가용 자원 현황(작업 진행률 등)에 기초하여 의뢰된 작업의 예상 소요시간을 예측하여 고객이 희망하는 납기를 서비스 시스템에서 제공 가능한지 여부를 판단하고 예상 소요 시간 내에 서비스 처리를 완료하지 못할 것으로 예측되면 서버를 증설하도록 한다. As shown in FIG. 5, the present invention allows a customer to specify a service processing grade (delivery date (delivery completion time), non-delivery date) at the time of providing an unassigned application service, and to complete the work within the processing completion time required by the customer. do. To this end, the execution control unit 215 predicts the expected time required for the requested work based on the available resource status (job progress rate) of the server resources according to the job processing schedule table and whether the customer can provide the desired delivery date in the service system. If it is determined that the service processing cannot be completed within the expected time, the server should be expanded.

이와같이, 본 발명은 대량의 컴퓨팅 자원이 소요되는 응용 어플리케이션 처리를 위하여 ASP 서비스 분야에 그리드 기술을 적용 시에, 응용 서비스의 유형에 따라 서버 자원을 동적으로 할당하고 처리 예정 시간을 정확히 예측하여 납기내에 응용 서비스 제공을 완료할 수 있도록 한다.As described above, when the grid technology is applied to the ASP service field for processing an application that requires a large amount of computing resources, the present invention dynamically allocates server resources according to the type of application service and accurately predicts a predetermined time for processing. Allows you to complete application service provision.

상기와 같은 본 발명은 그리드 기술을 기반으로 ASP 서비스를 제공하는 경우 서버 자원을 가상화된 공유 서버 풀 형태로 관리하고 워크로드(work-load)의 크기 에 따라 효율적으로 서버 자원을 할당하여 고객의 서비스 품질을 만족하는 동시에 서버 활용률을 증가시켜 경제성을 향상시키는 효과가 있다.As described above, the present invention manages server resources in the form of a virtualized shared server pool when providing an ASP service based on grid technology, and efficiently allocates server resources according to the size of a workload. It satisfies the quality and improves the economics by increasing the server utilization rate.

본 발명은 상술한 실시예로만 한정되는 것이 아니라 본 발명의 요지를 벗어나지 않는 범위 내에서 수정 및 변형하여 실시할 수 있고, 이러한 수정 및 변경 등은 이하의 특허 청구의 범위에 속하는 것으로 보아야 할 것이다.The present invention is not limited to the above-described embodiments, but can be modified and modified within the scope not departing from the gist of the present invention, and such modifications and changes should be regarded as belonging to the following claims.

Claims (19)

응용 서비스의 처리를 수행하는 복수의 서버로 구성된 서버 풀;A server pool consisting of a plurality of servers for processing application services; 고객으로부터 상기 응용 서비스 처리 요청을 입수하고 그 응용 서비스 처리 결과를 제공하는 응용 서비스부; 및An application service unit which obtains the application service processing request from a customer and provides the application service processing result; And 상기 응용 서비스 처리 요청에 따라, 상기 응용 서비스 중 할당형 응용 서비스 제공 시에 상기 할당형 응용 서비스를 제공중인 서버의 활용률 및 처리 부하량에 따라 서버를 동적으로 할당하고, 상기 응용 서비스 중 비할당형 응용 서비스 제공 시에 상기 비할당형 응용 서비스를 제공중인 서버의 작업 진행률을 이용하여 납기내 처리 완료 가능 여부를 판단하여 서버 자원을 동적으로 할당하는 응용 플랫폼부를 포함하여 구성하고,According to the application service processing request, the server dynamically allocates the server according to the utilization rate and processing load of the server providing the allocated application service when providing the allocated application service among the application services, and the unassigned application among the application services. It is configured to include an application platform for dynamically allocating server resources by determining whether it is possible to complete the processing within the delivery period using the work progress of the server providing the unassigned application service at the time of service provision, 상기 서버 풀은,The server pool, 상기 할당형 응용 서비스를 위한 전용의 서버 자원을 포함하는 할당형 서버 풀;An assignable server pool including dedicated server resources for the assigned application service; 상기 비할당형 응용 서비스를 위한 복수개의 서버 자원을 포함하는 비할당형 서버 풀; 및An unallocated server pool including a plurality of server resources for the unallocated application service; And 상기 할당형 서버 풀 또는 상기 비할당형 서버 풀의 서버 자원의 가용 자원 소진시 여유 서버 자원을 제공하는 여유 서버 풀을 포함하여 구성함을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Grid technology-based ASP service apparatus comprising a free server pool that provides a free server resources when the available resources of the server resources of the allocated server pool or the unallocated server pool. 제 1항에 있어서, The method of claim 1, 상기 응용 서비스 처리를 위한 어플리케이션, 상기 응용 서비스 처리 과정의 데이터, 상기 응용 서비스 처리를 위한 원본 데이터, 응용 서비스 제공자에 의한 서비스 제공 정책을 저장하는 스토리지를 더 포함하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Grid for ASP based on grid technology, characterized in that further comprising a storage for storing the application for the application service processing, the data of the application service processing, the original data for the application service processing, the service provision policy by the application service provider Service device. 제 2항에 있어서, 상기 응용 서비스부는,The method of claim 2, wherein the application service unit, 상기 응용 서비스 제공자로부터 서비스 등록 요청을 받으면, 상기 서비스 제 공 정책 및 상기 응용 서비스 처리를 위한 어플리케이션을 상기 스토리지에 전달하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Upon receiving a service registration request from the application service provider, an ASP service device based on grid technology, wherein the service providing policy and the application for processing the application service are delivered to the storage. 제 2 항에 있어서, 상기 응용 서비스부는,The method of claim 2, wherein the application service unit, 고객으로부터 응용 서비스 처리 요청을 입수하는 입수부;An acquisition unit for obtaining an application service processing request from a customer; 상기 입수부로부터 전달받은 응용 서비스 처리 요청의 내용을 식별하는 식별부; An identification unit for identifying a content of an application service processing request received from the acquisition unit; 상기 응용 서비스 처리를 위한 서버 자원의 가용 자원을 확인하고 그 스케줄을 미리 예약설정하는 스케줄 예약부; A schedule reservation unit that checks available resources of server resources for processing the application service and reserves the schedule in advance; 상기 응용 서비스 처리 결과를 상기 고객에게 제공하는 결과 제공부; 및 A result providing unit providing the application service processing result to the customer; And 상기 응용 서비스 처리를 위한 어플리케이션과 서비스 제공 정책을 상기 스토리지에 등록시키고 응용 서비스의 관리를 수행하는 서비스 관리부를 구비함을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Grid service technology-based ASP service device characterized in that it comprises a service management unit for registering the application and service provision policy for the application service processing in the storage and performs the management of application services. 제 4항에 있어서, 상기 식별부는The method of claim 4, wherein the identification unit 상기 응용 서비스의 종류, 서비스 처리등급, 서버 소요 사양, 상기 서버 자원의 메모리 용량, 상기 스토리지 소요량, 및 상기 응용 서비스의 예상 처리 소요 시간을 식별하여 해당 응용 서비스 요청을 처리하기 위한 프로파일(profile)을 생성하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. A profile for processing the application service request by identifying the type of the service, the service processing class, the server requirements, the memory capacity of the server resources, the storage requirements, and the expected processing time of the application service An ASP service apparatus based on grid technology, which is generated. 제 1항에 있어서, The method of claim 1, 상기 할당형 응용 서비스는 지속적인 서비스 제공을 위하여 전용의 서버 할당이 필요한 서비스에 해당하고, 상기 비할당형 응용 서비스는 응용 요청에 대한 처리 시간 동안만 서버를 사용하게 되어 서버 할당이 불필요한 서비스에 해당함을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. The assigned application service corresponds to a service requiring a dedicated server allocation for continuous service provision, and the unassigned application service uses a server only during processing time of an application request, and thus corresponds to a service requiring no server assignment. An ASP service apparatus based on grid technology. 삭제delete 제 1 항에 있어서, 상기 응용 플랫폼부는, The method of claim 1, wherein the application platform unit, 상기 응용 서비스부와 연동하여 스케줄 설정, 작업분배, 예외상황 처리, 및 프로비저닝 기능을 수행하는 응용 처리부;An application processing unit which performs schedule setting, job distribution, exception processing, and provisioning functions in association with the application service unit; 상기 요청된 응용 서비스가 비할당형 응용 서비스인 경우, 병렬처리를 위해 상기 작업할 데이터를 분할하고, 상기 서버 자원에서 병렬처리된 작업결과를 수집하여 병합하는 서비스 어댑터부; 및A service adapter unit for dividing the data to be worked on for parallel processing and collecting and merging the parallel processing results from the server resources when the requested application service is an unassigned application service; And 상기 응용 서비스 처리결과, 상기 서버 자원의 활용률, 상기 서버 자원의 처리 부하량, 상기 서버 자원의 작업 상태, 및 상기 서버 자원의 작업 진행률을 모니터링하는 모니터링부를 구비함을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Grid technology-based ASP service characterized in that it comprises a monitoring unit for monitoring the application service processing result, the utilization rate of the server resources, the processing load of the server resources, the work status of the server resources, and the work progress of the server resources Device. 제 8 항에 있어서, 상기 응용 처리부는,The method of claim 8, wherein the application processing unit, 응용 서비스 처리를 위한 서버 자원의 가용 자원에 따라 미리 예약된 스케쥴을 설정하는 스케줄 설정부;A schedule setting unit configured to set a schedule previously reserved according to available resources of server resources for application service processing; 상기 스케줄에 따라 서버 자원을 할당하고 작업을 분배하는 작업분배부;A job distribution unit for allocating server resources and distributing jobs according to the schedule; 상기 응용 서비스 처리를 위한 어플리케이션을 설치하여 상기 서버 풀의 서버 자원의 실행 환경을 동적으로 구성하고 관리하는 프로비저닝부;A provisioning unit that dynamically installs and manages an execution environment of server resources of the server pool by installing an application for processing the application service; 상기 스케줄 설정부, 상기 작업분배부, 및 상기 프로비저닝부의 구동을 제어하고 세부 작업 처리 순서 확인 및 병렬 처리 여부 판단을 수행하며, 상기 응용 서비스 유형에 따라 상기 서버의 동적 할당을 제어하는 실행 제어부;An execution control unit controlling driving of the schedule setting unit, the job distribution unit, and the provisioning unit, performing a detailed job processing order and determining whether to perform parallel processing, and controlling dynamic allocation of the server according to the application service type; 상기 스케줄 설정부에 의해 설정된 스케줄 정보를 포함하는 스케줄 표, 상기 서버 자원 할당 정보, 및 서버 자원 작업 상태를 저장하는 자원관리부를 구비함을 A resource management unit for storing a schedule table including schedule information set by the schedule setting unit, the server resource allocation information, and a server resource work state; 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. An ASP service apparatus based on grid technology. 제 9항에 있어서, 상기 실행 제어부는,The method of claim 9, wherein the execution control unit, 상기 할당형 응용 서비스를 제공중인 서버의 활용률 및 처리 부하량에 따라 서버의 추가, 유지, 및 제거를 판단하고, 서버를 추가해야 하는 경우 해당 서비스용 풀 내에 가용 서버 자원이 존재하는 지를 판단하여 상기 가용 서버 자원이 존재하지 않는 경우 상기 여유 서버 풀 내에 가용 서버 자원이 존재하는 지를 판단한 후, 상기 가용 서버 자원이 존재하는 경우 상기 가용 서버 자원에 대하여 서버 프로비저닝이 필요한 지를 판단하여 상기 프로비저닝이 필요하는 경우 어플리케이션을 설치한 후 응용 서비스를 처리하도록 제어하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Determining the addition, maintenance, and removal of the server according to the utilization rate and processing load of the server providing the allocated application service, and if the server needs to be added, it is determined whether there are available server resources in the corresponding service pool. If there is no server resource, it is determined whether an available server resource exists in the free server pool, and if the available server resource exists, it is determined whether server provisioning is required for the available server resource. ASP technology device based on grid technology, characterized in that the control to process the application service after installation. 제 9항에 있어서, 상기 실행 제어부는,The method of claim 9, wherein the execution control unit, 상기 비할당형 응용 서비스 제공 중인 서버의 작업 진행률을 이용하여 해당 서비스의 예상 소요 시간을 계산하여 납기내 처리 완료 가능 여부를 판단하고 상기 납기내 처리 완료가 불가능한 경우 서버를 추가하여 상기 비할당형 응용 서비스를 납기내 처리 완료하도록 제어하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. Calculate the estimated time required for the service using the task progress rate of the server that is providing the unallocated application service to determine whether the in-delivery process can be completed, and if the in-delivery process cannot be completed, add the server to the non-allocated application. An ASP service apparatus based on grid technology, which controls a service to be completed in a delivery date. 제 11항에 있어서, 상기 실행 제어부는,The method of claim 11, wherein the execution control unit, 상기 서버 추가 시에, 해당 서비스용 풀 내에 가용서버 자원이 존재하는 지를 판단하고 존재하지 않는 경우 상기 여유 서버 풀 내에 가용 서버 자원이 존재하 는 지를 판단한 후, 상기 가용 서버 자원이 존재하는 경우 상기 가용 서버 자원에 대하여 서버 프로비저닝이 필요한 지를 판단하여 상기 프로비저닝이 필요하는 경우 어플리케이션을 설치한 후 응용 서비스를 처리하도록 제어하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치. At the time of adding the server, it is determined whether there is an available server resource in the corresponding service pool, and if it is not present, it is determined whether there is an available server resource in the free server pool, and if the available server resource exists, the available Grid technology-based ASP service device characterized in that it determines whether server provisioning is required for server resources, and if the provisioning is required to control the application service after installing the application. 삭제delete 삭제delete 삭제delete 삭제delete 비할당형 응용 서비스 제공 중인 서버의 처리 진행률을 모니터링 하는 제 1 과정;A first step of monitoring a processing progress of a server that is providing an unassigned application service; 상기 처리 진행률과 서버 자원 정보를 이용하여 상기 비할당형 응용 서비스 처리 예상 소요 시간을 계산하고 상기 계산 결과를 이용하여 상기 비할당형 응용 서비스를 납기 내 완료할 수 있는 지를 판단하는 제 2 과정; 및A second step of calculating an estimated time required for processing of the unassigned application service using the processing progress rate and server resource information and determining whether the unassigned application service can be completed within the delivery date using the calculation result; And 상기 납기내 완료가 불가능한 경우, 상기 비할당형 응용 서비스를 제공하는 비할당형 응용 서비스용 서버 풀 내의 가용 서버 자원을 이용하여 상기 비할당형 응용 서비스를 납기내 처리하도록 하는 제 3 과정을 포함하여 구성하고, If the in-delivery cannot be completed, a third process of processing the unassigned application service in-time using available server resources in the unassigned application service server pool for providing the unassigned application service; Make up, 상기 제 3 과정은The third process is 상기 비할당형 응용 서비스용 서버 풀 내에 가용 서버 자원이 존재하는 지를 판단하는 제 3-1과정;Step 3-1 of determining whether an available server resource exists in the server pool for unallocated application services; 상기 제 3-1과정의 판단 결과, 상기 가용 서버 자원이 존재하지 않는 경우 여유 서버 풀 내에 가용 서버 자원이 존재하는 지를 판단하는 제 3-2과정;A third step of determining whether an available server resource exists in a free server pool when the available server resource does not exist as a result of the determination of step 3-1; 상기 여유 서버 풀 내에 가용 서버 자원이 존재하거나, 상기 비할당형 응용 서비스용 서버 풀 내에 가용 서버 자원이 존재하는 경우 상기 가용 서버 자원에 대하여 서버 프로비저닝의 필요성을 판단하는 제 3-3과정; 및Determining whether a server provisioning is necessary for the available server resource when an available server resource exists in the free server pool or an available server resource exists in the server pool for unassigned application service; And 상기 서버 프로비저닝이 필요한 경우, 상기 서버 자원에 대하여 어플리케이션을 설치하고 서버 작업 환경을 구성한 후 상기 비할당형 응용 서비스를 제공하는 제 3-4과정을 포함하는 것을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치에서의 서버 풀 할당 방법.When the server provisioning is required, grid technology-based ASP service apparatus comprising the step 3-4 of installing an application for the server resources and configuring a server working environment and providing the unallocated application service Server pool allocation method in. 삭제delete 제 17항에 있어서, The method of claim 17, 상기 제 3-2과정의 판단 결과, 상기 여유 서버 풀 내에 가용 서버 자원이 존재하지 않는 경우 운영자에게 서버 증설이 필요함을 통보하는 제 3-5과정을 더 포함함을 특징으로 하는 그리드 기술 기반의 ASP 서비스 장치에서의 서버 풀 할당 방법.As a result of the determination of step 3-2, if the available server resources do not exist in the free server pool, grid technology based ASP, characterized in that further comprising the step of notifying the operator needs to increase the server How server pools are allocated in service units.
KR1020060053392A 2006-06-14 2006-06-14 System for offering application service provider service in grid-base and method for assigning server pool thereof KR100856664B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020060053392A KR100856664B1 (en) 2006-06-14 2006-06-14 System for offering application service provider service in grid-base and method for assigning server pool thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020060053392A KR100856664B1 (en) 2006-06-14 2006-06-14 System for offering application service provider service in grid-base and method for assigning server pool thereof

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020080012259A Division KR100858210B1 (en) 2008-02-11 2008-02-11 Method for managing server pool in application service provider service based grid-base

Publications (2)

Publication Number Publication Date
KR20070119154A KR20070119154A (en) 2007-12-20
KR100856664B1 true KR100856664B1 (en) 2008-09-04

Family

ID=39137522

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060053392A KR100856664B1 (en) 2006-06-14 2006-06-14 System for offering application service provider service in grid-base and method for assigning server pool thereof

Country Status (1)

Country Link
KR (1) KR100856664B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101048449B1 (en) * 2007-12-18 2011-07-11 삼성전자주식회사 Admission control device and method considering multiple service providers in broadband wireless communication system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008106A (en) * 2003-12-31 2004-01-28 학교법인 한국정보통신학원 Method for assigning dynamic source based on qos and application special quality of user's in grid
KR20050078101A (en) * 2004-01-30 2005-08-04 한국과학기술정보연구원 Monitering system for information service of grid and method thereof
WO2005093577A1 (en) 2004-03-25 2005-10-06 International Business Machines Corporation A method, apparatus and computer program for monitoring resources

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040008106A (en) * 2003-12-31 2004-01-28 학교법인 한국정보통신학원 Method for assigning dynamic source based on qos and application special quality of user's in grid
KR20050078101A (en) * 2004-01-30 2005-08-04 한국과학기술정보연구원 Monitering system for information service of grid and method thereof
WO2005093577A1 (en) 2004-03-25 2005-10-06 International Business Machines Corporation A method, apparatus and computer program for monitoring resources

Also Published As

Publication number Publication date
KR20070119154A (en) 2007-12-20

Similar Documents

Publication Publication Date Title
US11099892B2 (en) Utilization-aware resource scheduling in a distributed computing cluster
US11681562B2 (en) Resource manager for managing the sharing of resources among multiple workloads in a distributed computing environment
US10474501B2 (en) Serverless execution of code using cluster resources
US8468530B2 (en) Determining and describing available resources and capabilities to match jobs to endpoints
US8495646B2 (en) Resource allocation system, resource allocation method and program which flexibly introduces a service
US10719343B2 (en) Optimizing virtual machines placement in cloud computing environments
US8171132B2 (en) Provisioning grid services to maintain service level agreements
CN102388381B (en) System and methods for allocating shared storage resources
US8219997B2 (en) Execution the job that is divided into job tasks based on the estimated completion time
US10162684B2 (en) CPU resource management in computer cluster
US8650296B1 (en) Workload reallocation involving inter-server transfer of software license rights and intra-server transfer of hardware resources
US8209695B1 (en) Reserving resources in a resource-on-demand system for user desktop utility demand
US8346909B2 (en) Method for supporting transaction and parallel application workloads across multiple domains based on service level agreements
US20050198636A1 (en) Dynamic optimization of batch processing
KR100956636B1 (en) System and method for service level management in virtualized server environment
US20170083367A1 (en) System and method for resource management
KR101113943B1 (en) Method And Apparatus For Managing Workload And Distributed Computing System Using The Same
WO2017088794A1 (en) System and method for resource management
Seth et al. Dynamic threshold-based dynamic resource allocation using multiple VM migration for cloud computing systems
KR100856664B1 (en) System for offering application service provider service in grid-base and method for assigning server pool thereof
KR100858210B1 (en) Method for managing server pool in application service provider service based grid-base
Kim et al. Design of the cost effective execution worker scheduling algorithm for faas platform using two-step allocation and dynamic scaling
KR100858205B1 (en) System for offering application service provider service in grid-base and method thereof
KR20160063430A (en) Method for managing and assigning available resourse by reservation of virtual machine
Poullie et al. Virtual machine priority adaption to enforce fairness among cloud users

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20120807

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20130805

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140804

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20150804

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20160809

Year of fee payment: 9