KR100629057B1 - 서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체 - Google Patents

서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체 Download PDF

Info

Publication number
KR100629057B1
KR100629057B1 KR1020057002210A KR20057002210A KR100629057B1 KR 100629057 B1 KR100629057 B1 KR 100629057B1 KR 1020057002210 A KR1020057002210 A KR 1020057002210A KR 20057002210 A KR20057002210 A KR 20057002210A KR 100629057 B1 KR100629057 B1 KR 100629057B1
Authority
KR
South Korea
Prior art keywords
server
module
resource
servers
configuration
Prior art date
Application number
KR1020057002210A
Other languages
English (en)
Other versions
KR20050084802A (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 인터내셔널 비지네스 머신즈 코포레이션
Publication of KR20050084802A publication Critical patent/KR20050084802A/ko
Application granted granted Critical
Publication of KR100629057B1 publication Critical patent/KR100629057B1/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/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/082Configuration setting characterised by the conditions triggering a change of settings the condition being updates or upgrades of network functionality
    • 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/08Configuration management of networks or network elements
    • H04L41/085Retrieval of network configuration; Tracking network configuration history
    • 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
    • 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
    • H04L67/1031Controlling of the operation of servers by a load balancer, e.g. adding or removing servers that serve requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/501Performance criteria
    • 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
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • 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
    • H04L67/1029Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers using data related to the state of servers by a load balancer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context

Abstract

본 발명은 주문형 용량(capacity on demand)을 용이하게 하기 위해서 웹서버의 원격 및 동적 구성을 수행하는 방법 및 시스템에 관한 것이다. 본 발명은 서버 팜(server farm) 등과 같은 환경 내에서 하나 이상의 서버에 대한 관리 및 경영의 문제에 대하여, 서버가 출력하는 데이터와 관련하여 서버가 담당한 역할을 정의하는 것에 기인하여, 서버의 견고한 기반 구조(infrastructure) 및 아키텍처와 관련된 솔루션을 제공한다. 이 솔루션은 자율적 모듈 컴퓨터 구성 요소(autonomic modular computing components) 형태로 제공되어 서버가 URL을 처리하여, 서버의 재시동(restart) 또는 수동 개입(manual intervention)을 필요로 하지 않으면서 해당 서버가 그 URL을 원격 데이터 소스와 연결시킬 수 있게 하고, 서버들로부터 수집된 성능 데이터를 대조 및 분석하여 해당 서버가 과도 사용(over utilised)되는지 과소 사용(under utilised)되는지 여부를 판정함으로써 새로운 서비스 또는 하드웨어 리소스의 도입을 허용한다.

Description

서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체{REMOTE DYNAMIC CONFIGURATION OF A WEB SERVER TO FACILITATE CAPACITY ON DEMAND}
본 발명은 네트워크 서비스의 분야에 관한 것으로, 보다 구체적으로는 주문형 용량(capacity on demand)을 용이하게 하는 서버의 원격 및 동적 구성에 관한 것이다.
많은 회사들이 온라인 뱅킹(on-line banking), 온라인 쇼핑, 정보 서비스 등과 같은 웹 애플리케이션과, 소비자가 사용한 처리 능력(processing power)에 대해서만 소비자가 지불할 수 있게 하고, 소비자가 비용 효율적 방식으로 최신의 장치를 배치할 수 있게 하는 '사용된 용량 지불 방식(pay for used capacity)' 등과 같은 호스팅 서비스 등의 다양한 애플리케이션을 호스팅하는 안전하고, 견고하며, 탄력적인 기반 구조를 소비자에게 제공하기 위해 호스팅 서비스(hosting services)를 제공한다. 호스팅 서비스는 여러 사업체에 다른 회사의 데이터 센터(data centers) 내의 컴퓨터 시스템을 태핑(tapping)함으로써 자체 개발된(in-house) 기술적 기반 구조를 형성하고 실행하여 소프트웨어 애플리케이션 및 서버 등과 같은 하드웨어 리소스의 관리를 제공하는 다른 솔루션을 제공한다. 서버 팜 등과 같은 환경 내에서 서버의 관리 및 경영과 관련된 주요 문제점은, 서버가 발행한 데이터에 관련하여 서버가 담당하는 역할에 대한 정의에 기인하는 서버의 견고한 기반 구조 및 아키텍처에 있기 때문에, 이러한 서버 및 서비스의 관리 및 경영은 여러 호스팅 업체에 중대한 과제를 제공한다.
예를 들면, 특정 소비자 제품을 지원하는 웹 서버 등의 리소스에 대한 견고한 할당에 의해서, 과소 사용되고(under utilized) 값비싼 웹 서버 리소스가 그 최대 용량까지 사용되지 않는 한편, 다른 제품을 지원하는 다른 웹 서버는 파괴될 정도까지 과도하게 사용되는 결과가 초래된다. 게다가, 오늘날 현 기술 수준의 웹 서버 소프트웨어는 복잡하고 탄력적이며, 기본 HTML(Hypertext-Markup Language) 페이지를 제공하는 표준을 넘어서는 강력한 처리를 촉진하도록 구성될 수 있고, API(Application Protocol Interfaces)를 통해 확장될 수 있다. 그러나 현재의 개발 절차 및 기술은 웹 서버가 구성 파일 또는 이진 레지스트리(binary registries) 중 어느 하나를 이용하여 수동으로 구성되고, 따라서 그 작동 중에 특정 웹사이트(들)에 대한 요청을 처리하는 동안 정지된 채로 유지되도록 요구한다. 특정 HTML 페이지에 대한 추가적이거나 상이한 리소스 또는 상이한 웹 사이트 URL이 공개되도록 요구하거나, 서버 풀에 새로운 서버가 추가되어야 한다거나 제거되어야 한다는 필요성이 제기될 때, 서버는 임의의 변경이 효력을 갖게 하기 위해서는 재시동되어야 한다. 서버를 수동으로 구성하기 위해서는 상당한 시간이 소요되고, 임의의 변경이 효력을 갖게 하기 위해 서버를 운전 정지시키고, 다시 서버를 재시동하는 것 이 임의의 시간 주기 동안 서비스 손실을 유발할 수 있어서 언제나 용이하지는 않기 때문에, 서버 팜 관리자의 일부에 대한 엄청난 관리 노력을 필요로 한다.
미국 특허 출원 공개 번호 제 US 2002/0002602 (2602) 호는 클라이언트 요청에 응답하여, 다수의 협동식 웹 서버들로부터 협동 방식으로 웹 페이지를 제공하는 것을 목표로 하는 리소스를 지정함으로써 클라이언트에게 웹 페이지를 제공하고, 신뢰성있는 접속을 유지하여 서버와 클라이언트가 동기화(synchronized)된 상태로 유지되게 하여, 정보가 손실되지 않게 하는 시스템에 관해 개시한다. 상술된 바와 같이 웹 서버가 URL을 처리하고 해당 URL이 데이터 소스와 연결될 수 있도록 하기 위해서, 웹 서버는 수동 개입(manual intervention)을 필요로 하고, 변경이 효력을 갖게 하기 위해 전력 웹 서버는 운전 정지된 다음 재시동되어야 할 것이다.
미국 특허 출원 번호 제 US 2002/002611 A1 호는 복수의 네트워크 접속형 서버로부터 적어도 하나의 네트워크 접속형 클라이언트 컴퓨터로 네트워크 기능성을 제공하는 시스템에 관해 개시하였다. US 2002/002611은 이용 가능한 사전 구성 프론트-엔드 서버(pre-configured front-end servers)에 가속된 프록시/캐싱 서비스(proxy/caching service)를 제공하도록 고려하였다.
WO 00/62502는 네트워크 트래픽(network traffic)을 제어하는 분산형 서버 클러스터(distributed server cluster)에 관해 개시하였다. WO 00/62502는 장애 서버의 검출 시에 자동적으로 장애 머신으로부터 하나 이상의 작동 가능한 머신으로 네트워크 트래픽을 시프팅(shifting)하는 부하 균형 시스템(load balancing system)에 관한 것이다.
제 1 측면을 고려하면, 본 발명은 주문형 용량을 제공하는 서버의 원격 및 동적 구성 방법을 제공하는데, 이 방법은, (a) 제 1 서버(145)에 의해 클라이언트 디바이스(100)로부터 리소스에 대한 요청을 수신하는 단계와, (b) 리소스에 대한 클라이언트 요청을 동적 컨텐츠 모듈(a dynamic content module)(215)로 라우팅(routing)하는 단계-이 동적 컨텐츠 모듈(215)은 요청된 리소스를 제공할 수 있는 이용 가능한 제 3 서버(150)를 식별하고, 요청된 리소스를 클라이언트 디바이스(100)에 라우팅함-와, (c) 제 1 서버(145) 및 제 3 서버(150)로부터의 성능 데이터를 대조하고, 성능 데이터를 제 2 서버에 보고하는 단계와, (d) 단계 (c)에서 대조된 성능 데이터를 분석하여, 제 1 서버 및 제 3 서버(150)의 성능 한계(performance capabilities)를 결정하고 제 1 서버 또는 제 3 서버가 사전 결정된 임계치에 도달하였는지 여부를 식별하는 단계와, (e) 단계 (d)에 응답하여 제 1 서버(145) 또는 제 3 서버(150)의 리소스에 대한 할당을 조정하고, 제 1 서버(145) 또는 제 3 서버(150)에 대한 구성 업데이트 인스트럭션을 제 1 서버(145)의 동적 구성 모듈(216)에 대해 발행하며, 리소스 업데이트가 성공적인지 여부를 판정하는 단계를 포함한다.
본 발명은 서버의 성능에 따라서, 예를 들면 서버가 최대 용량으로 사용되는 경우, 또는 서버가 과소 사용되는 경우에 따라, 서버가 서버 풀로부터 할당되거나 해제되게 하여 서버 성능의 최적화를 가능하게 하기 때문에 유리하다. 또한, 자율적 모듈 컴퓨터 구성 요소(autonomic modular computing components)를 이용하면 이 시스템은 가변적이고 예측 불가능한 조건 하에서 자체적으로 구성되고 재구성될 수 있다. 또한, 이 방법은 다른 종래 기술의 시스템에서와 같이 서버를 재시동할 필요 없이 하드웨어 리소스 또는 데이터 리소스를 변경시킬 수 있게 한다.
바람직하게는, 본 발명은 동적 구성 모듈로부터 제 3 서버에 대한 접속 구성 파일을 요청하는 동적 컨텐츠 모듈을 제공한다. 이는 제 1 서버가 클라이언트에 의해 요청된 리소스를 갖는 데이터 소스 서버가 어떤 것인지 판단할 수 있게 한다.
바람직하게는, 본 발명은 제 1 서버 및 제 3 서버 중의 어느 하나 또는 모두를 자유 서버 풀(free server pool)로부터, 또는 자유 서버 리소스 풀로 할당 또는 해제하는 것을 조정한다. 따라서, 본 발명은 서버 성능을 모니터링하고, 서버의 작업 부하(work load)에 따라서 추가적인 리소스를 추가하거나 리소스를 해제할 수 있다.
바람직하게는, 본 발명은 요청된 리소스가 제 1 서버로부터 접속 해제되어 새로운 서비스의 도입 또는 중복되는 서비스의 제거를 가능하게 한다.
다른 측면에서 볼 때, 본 발명은 주문형 용량을 제공하는 서버의 원격 및 동적 구성 시스템을 제공하는데, 이 시스템은 통신 네트워크 내에서 리소스를 요청하고 수신하는 클라이언트 디바이스와 함께 포함하고, 이 시스템은, 제 1 서버, 제 2 서버 및 제 3 서버를 포함하는데, 제 1 서버는, 동적 컨텐츠 모듈과, 동적 구성 모듈과, 보고 모듈을 포함하고, 리소스에 대한 클라이언트 요청을 동적 컨텐츠 모듈로 라우팅하는 수단과, 동적 컨텐츠 모듈이 요청된 리소스를 제공할 수 있는 제 3 서버를 식별하게 하고, 동적 구성 모듈 내에 저장되어 있는 제 3 서버 관련 접속 구성 파일을 검색하는 수단과, 보고 모듈이 제 1 서버 및 제 3 서버의 성능 데이터를 대조하게 하고, 성능 데이터를 제 2 서버로 라우팅하는 수단을 더 포함하며, 제 2 서버는, 분석 모듈과, 리소스 할당 모듈과, 리소스 업데이트 모듈을 포함하고, 성능 데이터를 분석 모듈로 전달하며, 분석 모듈이 제 1 서버 및 제 3 서버의 성능 한계를 결정하게 하고, 제 1 서버 및 제 3 서버가 사전 결정된 임계치에 도달하였는지 여부를 식별하는 수단과, 리소스 할당 모듈이 식별 수단에 응답하여 제 1 서버 및 제 3 서버 중 어느 하나 또는 모두에 대한 할당을 조정하게 하는 수단과, 리소스 업데이트 모듈이 제 1 서버 및 제 3 서버 중 어느 하나 또는 모두에 대한 구성 업데이트 인스트럭션을 제 1 서버의 동적 구성 모듈에 대해 발행하게 하고, 제 1 서버 및 제 3 서버 중 어느 하나 또는 모두에 대한 할당 또는 해제가 성공적인지 여부를 판정하는 수단을 더 포함하며, 제 3 서버는 하나 이상의 리소스와, 제 3 서버가 요청된 리소스를 제 1 서버에 공급하게 하는 수단을 포함한다.
본 발명의 다른 이점은 HTTP URL이 서버에 의해 처리되고, 서버를 재시동하거나 수동 개입할 필요 없이 원격 데이터 소스와 연결될 수 있다는 것이다. 본 발명의 다른 이점은 웹 사이트가 '동시 작동(on the fly)'을 제공받게 함으로써 데이터 소스 및 하드웨어 리소스의 동적 플러그-앤드-플레이(plug and play)를 위한 안전하고 중앙화된 관리를 가진다는 것이다. 본 발명의 또 다른 이점은 FTP, XML, SOAP 및 파일 공유 등과 같은 다른 메커니즘에 대한 다중 프로토콜 지원을 제공한다는 것이다.
본 발명은 이하에서 첨부된 도면을 참조하여 오로지 예로서 설명될 것이다.
도 1은 본 발명의 바람직한 실시예에 따라 본 발명을 구현할 수 있는 서버 팜(server farm)을 도시하는 도면이다.
도 2는 본 발명의 바람직한 실시예에 따라 시스템의 구성 요소에 대한 상세한 개요를 도시하는 블록도이다.
도 3은 본 발명의 바람직한 실시예에 따라서 도 2의 웹 서버에서 동적 컨텐츠 모듈의 기능을 상세하게 나타내는 흐름도이다.
도 4는 본 발명의 바람직한 실시예에 따라서 도 2의 웹 서버에서 보고 모듈의 기능을 상세하게 나타내는 흐름도이다.
도 5는 본 발명의 바람직한 실시예에 따라서 도 2의 관리 서버에서 분석 모듈의 기능을 상세하게 나타내는 흐름도이다.
도 6은 본 발명의 바람직한 실시예에 따라서 도 2의 관리 서버에서 리소스 할당 모듈의 기능을 상세하게 나타내는 흐름도이다.
도 7은 본 발명의 바람직한 실시예에 따라서 도 2의 관리 서버에서 리소스 업데이트 모듈의 기능을 상세하게 나타내는 흐름도이다.
도 1은 본 발명이 구현될 수 있는 서버 팜(server farm)을 도시한다. 서버 팜은 인터넷(110) 등과 같은 네트워크에 접속된 복수의 클라이언트 디바이스(100, 105)를 포함한다. 클라이언트 디바이스(100, 105)는 네트워크(110) 상에서 리소스에 대한 요청을 송신 및 수신함으로써 트랜잭션을 수행한다. 라우터(routers)(115, 120)는 네트워크(110)와 LAN(local area network)(125) 사이에 접속을 제공하고, 고속 이더넷 네트워크(Ethernet network) 또는 임의의 다른 적합한 전송 매체 또는 토폴로지(topology)일 수 있다. 라우터(115, 120)는 입력 요청을 수신하고 네트워크(135)를 거쳐 해당 요청을 라우터/방화벽(firewall)(130)으로 전달하며, 이 라우터/방화벽(130)은 요청을 서버(145∼155)로 필터링한다. 본 발명은 서버(145∼155)에 대한 중앙 제어 포인트를 위한 관리 서버(140)를 포함한다. 서버(140∼155)는 예를 들면 UNIX(미국 및 다른 국가에서 오픈 그룹(The Open Group)의 등록 상표명임), Novell(미국 및 다른 국가에서 노벨 사(Novell Inc)의 등록 상표명임) 또는 Windows NT(미국 및 다른 국가에서 마이크로소프트 코포레이션의 등록 상표명임) 중의 하나 또는 그 모두 및/또는 피어-투-피어(peer to peer) 네트워크 장치를 포함하는 하나 이상의 서버 기술을 구현할 수 있다. 본 발명은 서버 팜을 참조하여 개시되었으나, 본 발명은 다른 서버 네트워크 장치뿐만 아니라 퍼베이시브 컴퓨터 환경(pervasive computing environments)에도 동일하게 적용될 수 있다.
애플리케이션 데이터는 서버(140∼155)로부터 떨어져 있는 하나 이상의 데이터 소스 서버(175, 180) 내의 데이터 저장 장치에 저장되어 있다. 요청은 서버(145∼155) 중 어느 하나로부터 네트워크(160)를 거쳐 전송된다. 이 요청은 라우터/방화벽(165)에 의해 수신되고, 다른 네트워크(170)를 거쳐 하나 이상의 클라이언트 디바이스(100, 105)에 의해 요청된 리소스를 저장하는 적절한 데이터 소스 서버(175, 180)로 라우팅된다.
도 2를 참조하면, 시스템의 개략도가 도시되어 있다. 시스템은 자율적 모듈 컴퓨터 구성 요소(modular autonomic computing components)를 포함하고, 자체 진단 능력(self diagnostic capabilities)을 제공하여 서버(145∼155)에 대한 성능 결과를 검출한다. 또한, 모듈 구성 요소를 사용함으로써 시스템은 새로운 서비스의 용이한 도입을 위해 데이터 소스의 '플러그 앤드 플레이'를 제공할 수 있다.
이 시스템은 할당된 서버 풀 내에서 각 서버(145∼155)로부터의 성능 및 요 청 데이터를 대조하는 보고 모듈(205)과, 최적 인터페이스를 통해 리소스에 대한 요청을 라우팅하여, 서버(145∼155)의 원시 데이터 액세스 기능(native data access capability)을 이용하거나 원격 서버 자체에 대한 접속을 형성하고 관리함으로써 요청된 리소스에 액세스하는 동적 컨텐츠 모듈(215)과, 할당된 서버 풀 내의 각 서버에 대한 구성 파일을 업데이트, 처리 및 저장하는 동적 구성 모듈(216)을 구비하는 서버(145) 및 서버로부터 리소스를 요청하는 클라이언트 디바이스(100)를 포함한다. 구성 파일은, 예를 들면 등록 키(registration key), 포트 설정(port settings), 설치 경로(installation path), 인증 설정(authentication settings), 사용자 설정, SMPT 설정, 접속 설정, 웹 브라우저 설정 및 로그인 설정(log in settings) 등과 같이 특정 서버(145∼155)에 대한 구성 설정을 유지하기 위해 사용된다.
이 시스템은 이용 가능한 서버 풀 내의 모든 서버에 대한 중앙 제어 포인트와, 보고 모듈(205)로부터의 성능 및 요청 데이터를 분석하는 분석 모듈(230)과, 할당된 서버의 풀에 추가되어야 하는 자유 서버 리소스 풀 내에 자유 리소스가 존재하는지 여부 또는 서버를 해제하고 해당 서버를 자유 서버 리소스 풀 내에 다시 배치할 필요가 있는지 여부를 판정하는 리소스 할당 모듈(235)과, 리소스가 이용 가능한 리소스 풀로부터 성공적으로 할당 또는 해제되었는지 여부를 판정하는 리소스 업데이트 모듈(240)을 제공하는 관리 서버(140) 및 수동 구성 작업을 시스템 내에 입력시키는 관리 클라이언트(245)를 더 포함한다. 관리 클라이언트(245)는 서버 관리자로부터 관리 요청을 수신할 수 있다. 관리 클라이언트는 그래픽 사용자 인터페이스(graphical user interface)로서 기능하고, 예를 들면 서버(145∼155)와 관리 서버(140) 사이에서 표준 HTTP 접속을 이용하여 인터넷을 거쳐 다른 사이트 내에 원격으로 접속성을 제공하는 등과 같이 관리 서버에 접속성을 제공하는 것과 관련하여 더 큰 탄력성을 제공한다. 오로지 인증된 관리자만이 구성 변경을 수행할 수 있도록 하기 위해서, 인터페이스는 인증 및 자격 요청을 취급하는 보안 디렉토리(security directory)(도면 내에 도시하지 않음)에 제공될 수 있다.
데이터 스트림(220, 225)은 HTTP 세션(HTTP session) 상의 전송 메커니즘(220, 225)으로서 XML(Extensible Markup Language)을 이용하여 서버(145∼155) 및 관리 서버(140)로부터, 또한 서버(145∼155) 및 관리 서버(140)로 전달된다. XML은 웹 상에서 구성된 문서 및 데이터를 위한 범용 포맷이다. XML은 HTML과 유사한 태그(tags)를 사용하고, 여러 사람들이 이해할 수 있는 방식으로 데이터가 구성될 수 있게 한다. XML에 대한 추가적인 정보는 월드 와이드 웹 컨소시움(World Wide Web Consortium)에서 확인할 수 있다.
클라이언트 디바이스(100)는 특정 리소스에 대한 요청을 서버(145)에 전달한다. 서버(145∼150)에 의해 수신될 수 있는 이러한 요청 중의 하나로는 예를 들면 HTML 페이지를 요청하는 http://www.ibm.com 등의 HTTP URL이 있다. 서버가 HTTP URL을 변환할 수 있게 하기 위해서, 서버는 인터넷 도메인 네임을 129.42.19.99 등과 같은 네트워크 어드레스로 변환하는 도메인 네임 서비스(Domain Name Service : DNS)를 이용할 수 있다. 리소스는 표준 HTML 페이지 또는 실행 파일(.exe file)일 수 있다. 서버(145)는 클라이언트 디바이스(100, 105)로부터 리소스에 대한 요청 을 수신하고 및 해당 요청은 동적 컨텐츠 모듈(215)로 전달된다.
도 2는 관리 서버(140) 및 서버(145)에 대해 도시하였으나, 이러한 시스템은 도 1에 도시된 바와 같이 복수의 서버(145∼155)를 포함하고, 각 서버는 도 2에 도시된 모듈을 포함할 수 있다는 것을 이해해야 한다.
동적 컨텐츠 모듈(215)의 동작은 도 3을 참조하여 이하에서 설명될 것이다. 도 3의 점선은 데이터 흐름을 나타내고, 단일 실선은 제어 흐름을 나타낸다는 것을 유의해야 한다. 동적 컨텐츠 모듈(215)은 단계(300)에서 클라이언트 디바이스로부터 리소스에 대한 요청을 수신하고, 단계(305)에서 서버(145)에 저장된 컨텐츠와 요청된 리소스를 비교한다. 예를 들어, 클라이언트가 www.ibm.com/news/today.html로부터 리소스를 요청하였다면, 동적 컨텐츠 모듈은 서버에 저장된 today.html 페이지와 소스 서버에 저장된 today.html 페이지를 비교하여 today.html 페이지가 업데이트되었는지 여부를 판정하고, 그에 따라서 클라이언트 디바이스에게 가장 최신의 today.html 페이지를 전달한다. 단계(310)에서 서버는 컨텐츠가 캐싱(cached)되었는지 여부를 판정하고, 단계(360)에서 캐싱된 컨텐츠가 최근 및 최신의 것인지 여부를 판정한다. 캐시(cache)가 최근의 제어 흐름이면 단계(355)로 진행되고, 요청된 리소스는 컨텐츠 캐시 저장 장치(content cache store)(350)로부터 검색되며, 그와 동등하게 컨텐츠가 캐싱되지 않으면, 요청된 리소스를 포함하는 서버는 단계(315)에서 식별된다. 다음으로 단계(355)에서 서버(145)의 활동에 관련된 정보가 보고 모듈(205)에 전달된다. 이러한 정보는 제품 등과 같은 각 리소스에 대한 요청 회수, 서버가 응답하는데 소요되는 시간 또는 HTTP 또는 FTP(File Transfer Protocol) 등과 같이 요청된 서비스의 타입 등의 데이터를 포함할 수 있다.
서버(145)가 데이터 소스 서버(175)를 식별할 수 있게 하기 위해서, 단계(325)에서 서버는 접속 구성 저장 장치(320)로부터 소스 서버에 대한 접속 구성 파일을 검색한다. 단계(330)에서, 컨텐츠 요청에 대한 사전 처리(preprocessing)가 수행된다. 단계(335)에서, 데이터 소스 서버(175)에 대해 요청이 발행되고, 단계(340)에서 서버(145)는 클라이언트 디바이스(300)로부터 요청된 컨텐츠를 소스 서버로부터 수신한다. 수신된 컨텐츠가 컨텐츠 캐시 데이터 저장 장치(350) 내에 저장되거나, 단계(345)에서 기존 컨텐츠가 검색된 컨텐츠를 가지고 리프레시(refreshed)되어 컨텐츠 캐시 데이터 저장 장치(350) 내에 저장된다.
다시 단계(355)를 참조하면, 단계(300)에서 클라이언트 디바이스(100)로부터 요청된 리소스에 관련된 정보는 성능 정보와 함께 보고 모듈(210)로 전달된다. 도 4를 참조하면, 단계(400)에서 보고 모듈(205)은 동적 컨텐츠 모듈(215)로부터 컨텐츠 정보를 수신하고, 정보를 기록한다. 단계(405)에서 이러한 상세 정보는 서버 통계 데이터 저장 장치(server statistics data store) 내에 저장되고, 단계(410)에서 각각의 서버(145∼155)와 관련된 서버 통계(응답 시간, 요청된 페이지의 개수, 요청 회수, 어떤 페이지가 요청되는지, 어떤 서버인지, 서버 구성 상세 정보 및 성능 데이터)는 XML 데이터 스트림(220)을 경유하여 관리 서버(140)로 전달된다.
도 5를 참조하면, 관리 서버(140)의 분석 모듈(230)은 XML 데이터 스트림 (220)을 통해 서버 통계를 수신하고, 단계(500)에서 분석 모듈(230)은 서버 통계를 분석하여 단계(505)에서 서버(145∼155)가 사전 결정된 임계치에 도달하였는지 여부를 판정하고, 서버의 성능이 사전 결정된 임계치에 도달하지 않았다면 제어 흐름은 단계(500)로 되돌아가고, 서버의 성능이 사전 결정된 임계치에 도달하였다면 제어 흐름은 단계(510)로 향하여, 분석 모듈(230)이 서버의 현재 구성 설정을 분석하고, 서버의 구성 설정이 리소스 할당 모듈(235)로 전달되게 한다.
도 6을 참조하면, 단계(600)에서 성능 임계치가 초과된 경우 또는 서버가 할당된 서버의 현재의 풀에서 제거되고, 자유 리소스 풀로 복귀되어야 하는 경우에 리소스 할당 모듈(235)은 할당된 서버(145∼155)의 현재의 풀에 새로운 서버가 추가되어야 하는지 여부를 판정한다. 분석 모듈(230)이 추가적인 서버가 추가되어야 한다고 판정하는 경우에, 제어는 단계(605)로 진행되고, 리소스 할당 모듈은 단계(610)에서 여분의 리소스가 존재하는지 여부를 식별한다. 여분의 리소스는 예를 들면, 추가적인 서버 또는 동등한 몇몇 다른 하드웨어 리소스일 수 있다. 여분의 리소스가 배정되지 않는다면, 제어는 단계(630)로 진행되고, 단계(635)에서 예외 오류(exception error)가 생성되고, 관리 콘솔(management console)(245)에 디스플레이되어, 단계(635)에서 리소스 업데이트가 실패하였다는 것을 기술자에게 경고한다.
다시 단계(610)를 참조하면, 여분의 리소스가 배정된 경우에 제어는 단계(615)로 진행되고, 새로운 서버가 선택되며, 서버의 구성 설정 파일과 관련된 정보가 특정 서버(140∼155)의 구성 데이터베이스(615)로부터 요청된다. 단계(620)에 서, 구성 설정 파일이 수신되면, 구성 설정 파일은 선택된 서버에 대한 현재의 인스트럭션으로 업데이트되고, XML 데이터 스트림(225)을 경유하여 리소스 업데이트 모듈(240) 및 동적 구성 모듈(216)로 전달된다.
도 7을 참조하면, 단계(700)에서 구성 업데이트 정보는 XML 데이터 스트림(225)을 경유하여 서버(145)의 동적 구성 모듈(216)에 대해 발행된다. 단계(710)에서 리소스 업데이트 모듈(240)은 서버(145)로부터의 확인 신호를 대기한다. 단계(715)에서 구성 업데이트가 성공적이면 제어는 단계(720)로 진행되고, 구성 데이터베이스(730)는 업데이트된다. 다시 단계(720)를 참조하면, 서버(145)로부터의 확인이 성공적이면 제어는 또한 단계(735)로 진행되고, 부하 균형 기반 구조(load balancing infrastructure)에 대한 구성 업데이트 요청이 요청된다. 이와 동등하게, 단계(720)에서 업데이트가 성공적이지 않으면, 제어는 단계(745)로 진행되어, 예외 처리 경고(exception handling alert)가 생성되고, 단계(750)에서 리소스 업데이트는 실패한 것으로 간주된다.

Claims (21)

  1. 주문형 용량(capacity on demand)을 제공하는 서버(145, 140, 150)의 원격 및 동적 구성 방법으로서,
    (a) 제 1 서버(145)에 의해 클라이언트 디바이스(100)로부터 리소스에 대한 요청을 수신하는 단계와,
    (b) 상기 리소스에 대한 클라이언트 요청을 동적 컨텐츠 모듈(a dynamic content module)(215)로 라우팅(routing)하는 단계-상기 동적 컨텐츠 모듈(215)은 상기 요청된 리소스를 제공할 수 있는 이용 가능한 제 3 서버(150)를 식별하고, 상기 요청된 리소스를 상기 클라이언트 디바이스(100)에 라우팅함-와,
    (c) 상기 제 1 서버(145) 및 상기 제 3 서버(150)로부터의 성능 데이터를 대조하고, 상기 제 1 서버가 성능 데이터를 제 2 서버(140)에 보고하는 단계와,
    (d) 상기 단계 (c)에서 대조된 상기 수신된 성능 데이터를 분석하여, 상기 제 1 서버(145) 및 상기 제 3 서버(150)의 성능 한계(performance capabilities)를 결정하고 상기 제 1 서버(145) 또는 상기 제 3 서버(150)가 사전 결정된 임계치에 도달하였는지 여부를 식별하는 단계와,
    (e) 상기 단계 (d)에 응답하여 상기 제 1 서버(145) 또는 상기 제 3 서버(150)의 상기 리소스에 대한 할당을 조정하고, 상기 제 1 서버(145) 또는 상기 제 3 서버(150)에 대한 구성 업데이트 인스트럭션을 상기 제 1 서버(145)의 상기 동적 구성 모듈(216)에 대해 발행하며, 리소스 업데이트가 성공적인지 여부를 판정하는 단계
    를 포함하는 서버의 원격 및 동적 구성 방법.
  2. 제 1 항에 있어서,
    상기 동적 컨텐츠 모듈(215)은 상기 동적 구성 모듈(216)로부터 상기 제 3 서버에 대한 접속 구성 파일을 요청하는 기능을 더 포함하는 서버의 원격 및 동적 구성 방법.
  3. 제 1 항에 있어서,
    상기 동적 구성 모듈(216)은 상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 구성 설정을 저장하는 서버의 원격 및 동적 구성 방법.
  4. 제 1 항에 있어서,
    상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 할당을 조정하는 상기 단계는 자유 서버 리소스 풀(free server resource pool)로부터 추가적인 서버를 할당하는 단계를 더 포함하는 서버의 원격 및 동적 구성 방법.
  5. 제 1 항에 있어서,
    상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 할당을 조정하는 상기 단계는 상기 제 1 서버(145) 또는 상기 제 3 서버(150)를 할당된 리소스 풀로부터 자유 서버 리소스 풀로 해제(de-allocating)하는 단계를 더 포함하는 서버의 원격 및 동적 구성 방법.
  6. 제 1 항 또는 제 2 항에 있어서,
    상기 제 1 서버(145) 및 상기 제 2 서버(140)는 XML 데이터 스트림을 이용하여 서로 통신하는 서버의 원격 및 동적 구성 방법.
  7. 제 1 항에 있어서,
    상기 제 2 서버는 하나 이상의 제 1 서버(145) 및 하나 이상의 제 3 서버(150)에 대한 중앙 제어 포인트(central control point)를 제공하는 관리 서버인 서버의 원격 및 동적 구성 방법.
  8. 제 1 항에 있어서,
    상기 요청된 리소스는 상기 제 1 서버(145)로부터 접속 해제되어 새로운 서비스의 도입 또는 중복되는 서비스의 제거를 가능하게 하는 서버의 원격 및 동적 구성 방법.
  9. 제 1 항에 있어서,
    상기 제 1 서버(145)는 복수의 서버인 서버의 원격 및 동적 구성 방법.
  10. 제 1 항에 있어서,
    상기 제 3 서버(150)는 복수의 서버인 서버의 원격 및 동적 구성 방법.
  11. 주문형 용량을 제공하는 서버의 원격 및 동적 구성 시스템으로서,
    통신 네트워크 내에서 리소스를 요청하고 수신하는 클라이언트 디바이스와 함께 사용할 수 있고,
    제 1 서버(145), 제 2 서버(140) 및 제 3 서버(150)를 포함하되,
    상기 제 1 서버(145)는,
    동적 컨텐츠 모듈(215)과, 동적 구성 모듈(216)과, 보고 모듈(205)을 포함하고,
    상기 리소스에 대한 클라이언트 요청을 상기 동적 컨텐츠 모듈(215)로 라우팅하는 수단과,
    상기 동적 컨텐츠 모듈(215)이 상기 요청된 리소스를 제공할 수 있는 상기 제 3 서버(150)를 식별하게 하고, 상기 동적 구성 모듈 내에 저장되어 있는 상기 제 3 서버(150) 관련 구성 파일을 검색하는 수단과,
    상기 보고 모듈(205)이 상기 제 1 서버(145) 및 상기 제 3 서버(150)의 성능 데이터를 대조하게 하고, 상기 성능 데이터를 제 2 서버(140)로 라우팅하는 수단을 더 포함하며,
    상기 제 2 서버는,
    분석 모듈(230)과, 리소스 할당 모듈(235)과, 리소스 업데이트 모듈(240)을 포함하고,
    상기 성능 데이터를 상기 분석 모듈(230)로 전달하며,
    상기 분석 모듈(230)이 상기 제 1 서버(145) 및 상기 제 3 서버(150)의 성능 한계를 결정하게 하고, 상기 제 1 서버(145) 및 상기 제 3 서버(150)가 사전 결정된 임계치에 도달하였는지 여부를 식별하는 수단과,
    상기 리소스 할당 모듈(235)이 상기 식별 수단에 응답하여 상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 할당을 조정하게 하는 수단과,
    상기 리소스 업데이트 모듈(240)이 상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 구성 업데이트 인스트럭션을 상기 제 1 서버(145)의 상기 동적 구성 모듈(216)에 대해 발행하게 하고, 상기 제 1 서버(145) 및 상기 제 3 서버(150) 중 어느 하나 또는 모두에 대한 할당 또는 해제가 성공적인지 여부를 판정하는 수단을 더 포함하고,
    상기 제 3 서버(150)는 하나 이상의 리소스와, 상기 제 3 서버(150)가 요청된 리소스를 상기 제 1 서버(145)에 공급하게 하는 수단을 포함하는
    서버의 원격 및 동적 구성 시스템.
  12. 삭제
  13. 삭제
  14. 삭제
  15. 제 11 항에 있어서,
    상기 접속 구성 파일은 상기 제 1 서버(145) 및 상기 제 3 서버(150)에 대한 접속 설정을 포함하는 서버의 원격 및 동적 구성 시스템.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 컴퓨터 프로그램 코드를 기록한 컴퓨터 판독 가능 기록 매체로서,
    데이터 처리 시스템 상에서 실행될 때, 상기 컴퓨터 프로그램 코드는 상기 데이터 처리 시스템이 제 1 항에 기재된 상기 방법을 실행하도록 명령하는 컴퓨터 판독 가능 기록 매체.
KR1020057002210A 2002-09-07 2003-08-29 서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체 KR100629057B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0220846.0 2002-09-07
GBGB0220846.0A GB0220846D0 (en) 2002-09-07 2002-09-07 Remote dynamic configuration of a web server to facilitate capacity on demand

Publications (2)

Publication Number Publication Date
KR20050084802A KR20050084802A (ko) 2005-08-29
KR100629057B1 true KR100629057B1 (ko) 2006-09-26

Family

ID=9943702

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057002210A KR100629057B1 (ko) 2002-09-07 2003-08-29 서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체

Country Status (14)

Country Link
US (1) US7930397B2 (ko)
EP (1) EP1535445B1 (ko)
JP (1) JP3980596B2 (ko)
KR (1) KR100629057B1 (ko)
CN (1) CN100479456C (ko)
AT (1) ATE341147T1 (ko)
AU (1) AU2003259385A1 (ko)
BR (1) BRPI0314012B1 (ko)
CA (1) CA2496783A1 (ko)
DE (1) DE60308700T2 (ko)
GB (1) GB0220846D0 (ko)
IL (1) IL167256A (ko)
TW (1) TWI253262B (ko)
WO (1) WO2004023757A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101881637B1 (ko) 2016-05-19 2018-08-24 주식회사 케이티 유전체 데이터 분석을 위한 작업 처리 방법 및 시스템

Families Citing this family (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7480705B2 (en) * 2001-07-24 2009-01-20 International Business Machines Corporation Dynamic HTTP load balancing method and apparatus
KR100907402B1 (ko) * 2002-06-27 2009-07-10 주식회사 케이티 유사/중복 서비스 자동 비교 방법
US20040226017A1 (en) * 2003-05-09 2004-11-11 Leonard Ozgur C. Mechanism for associating resource pools with operating system partitions
US7702817B2 (en) * 2003-10-28 2010-04-20 Microsoft Corporation Wireless network access technologies for retrieving a virtual resource via a plurality of wireless network interfaces
WO2005089235A2 (en) 2004-03-13 2005-09-29 Cluster Resources, Inc. System and method providing object messages in a compute environment
US8782654B2 (en) 2004-03-13 2014-07-15 Adaptive Computing Enterprises, Inc. Co-allocating a reservation spanning different compute resources types
JP2005352689A (ja) 2004-06-09 2005-12-22 Hitachi Ltd 対話型サービス配置方法、対話型サービス配置プログラムおよびその記録媒体、ならびに、サービスブローカ装置
US20070266388A1 (en) 2004-06-18 2007-11-15 Cluster Resources, Inc. System and method for providing advanced reservations in a compute environment
US8176490B1 (en) 2004-08-20 2012-05-08 Adaptive Computing Enterprises, Inc. System and method of interfacing a workload manager and scheduler with an identity manager
US8224966B2 (en) * 2004-08-24 2012-07-17 Cisco Technology, Inc. Reproxying an unproxied connection
DE112005001995B4 (de) * 2004-09-13 2011-12-08 Fujitsu Siemens Computers, Inc. Computeranordnung und Verfahren zum Anbieten von Diensten für Benutzer über ein Netzwerk
WO2006053093A2 (en) 2004-11-08 2006-05-18 Cluster Resources, Inc. System and method of providing system jobs within a compute environment
US7551622B2 (en) * 2004-12-13 2009-06-23 Sap Ag Quality of service enforcement
US9118717B2 (en) * 2005-02-18 2015-08-25 Cisco Technology, Inc. Delayed network protocol proxy for packet inspection in a network
US7698430B2 (en) 2005-03-16 2010-04-13 Adaptive Computing Enterprises, Inc. On-demand compute environment
US9075657B2 (en) 2005-04-07 2015-07-07 Adaptive Computing Enterprises, Inc. On-demand access to compute resources
US8863143B2 (en) 2006-03-16 2014-10-14 Adaptive Computing Enterprises, Inc. System and method for managing a hybrid compute environment
US9231886B2 (en) 2005-03-16 2016-01-05 Adaptive Computing Enterprises, Inc. Simple integration of an on-demand compute environment
US9015324B2 (en) 2005-03-16 2015-04-21 Adaptive Computing Enterprises, Inc. System and method of brokering cloud computing resources
US20060218130A1 (en) * 2005-03-28 2006-09-28 Inventec Corporation Software-and-hardware resource
US20110258320A1 (en) * 2005-04-07 2011-10-20 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
US8782120B2 (en) 2005-04-07 2014-07-15 Adaptive Computing Enterprises, Inc. Elastic management of compute resources between a web server and an on-demand compute environment
US7499991B2 (en) * 2005-11-10 2009-03-03 International Business Machines Corporation Autonomic application server unneeded process disablement
US9785477B2 (en) 2006-06-05 2017-10-10 International Business Machines Corporation Providing a policy hierarchy in an enterprise data processing system
US20080040196A1 (en) * 2006-07-06 2008-02-14 International Business Machines Corporation Method, system and program product for hosting an on-demand customer interaction center utility infrastructure
JP4992905B2 (ja) * 2006-09-29 2012-08-08 富士通株式会社 サーバ配備プログラム及びサーバ配備方法
US8473938B1 (en) 2007-06-21 2013-06-25 Open Invention Network Llc Security patch update processor
US8046694B1 (en) 2007-08-06 2011-10-25 Gogrid, LLC Multi-server control panel
US8041773B2 (en) 2007-09-24 2011-10-18 The Research Foundation Of State University Of New York Automatic clustering for self-organizing grids
US8239862B2 (en) 2007-11-26 2012-08-07 Ricoh Company, Ltd. Apparatus, method, and computer program product for processing information
CN101304330B (zh) * 2008-06-28 2010-12-08 华为技术有限公司 一种资源配置方法、服务器、及网络系统
US8468535B1 (en) 2008-09-23 2013-06-18 Gogrid, LLC Automated system and method to provision and allocate hosting resources
US8185624B2 (en) * 2009-03-09 2012-05-22 Oracle International Corporation Efficient on-demand provisioning of servers for specific software sets
KR100926735B1 (ko) * 2009-04-24 2009-11-16 주식회사 이븐스타 웹 소스 보안 관리 시스템 및 방법
US10877695B2 (en) 2009-10-30 2020-12-29 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US11720290B2 (en) 2009-10-30 2023-08-08 Iii Holdings 2, Llc Memcached server functionality in a cluster of data processing nodes
US8473587B1 (en) 2010-05-20 2013-06-25 Gogrid, LLC System and method for caching server images in a hosting system
EP2521031A4 (en) 2010-06-17 2014-01-08 Hitachi Ltd COMPUTER SYSTEM AND REVISION METHOD THEREOF
US9009599B2 (en) * 2010-10-15 2015-04-14 Cellco Partnership Technique for handling URLs for different mobile devices that use different user interface platforms
US8862738B2 (en) 2010-10-18 2014-10-14 International Business Machines Corporation Reallocating resource capacity among resource pools in a cloud computing environment
US9069620B2 (en) 2010-10-20 2015-06-30 Microsoft Technology Licensing, Llc Creating and deploying service-ready virtual hard disks
US9288117B1 (en) 2011-02-08 2016-03-15 Gogrid, LLC System and method for managing virtual and dedicated servers
US8495355B2 (en) 2011-02-28 2013-07-23 Microsoft Corporation Operating system experience states
US8880657B1 (en) 2011-06-28 2014-11-04 Gogrid, LLC System and method for configuring and managing virtual grids
US8291312B1 (en) * 2012-03-06 2012-10-16 Google Inc. Displaying web pages without downloading static files
CN103067352B (zh) * 2012-10-26 2017-12-05 曙光信息产业(北京)有限公司 用于云计算环境中的WebService访问系统和方法
JP6481299B2 (ja) * 2014-09-12 2019-03-13 日本電気株式会社 監視装置、サーバ、監視システム、監視方法および監視プログラム
CN108228337B (zh) * 2016-12-22 2021-08-27 财团法人工业技术研究院 中央处理单元的配置方法及适用此方法的服务器

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5774668A (en) * 1995-06-07 1998-06-30 Microsoft Corporation System for on-line service in which gateway computer uses service map which includes loading condition of servers broadcasted by application servers for load balancing
US6886035B2 (en) * 1996-08-02 2005-04-26 Hewlett-Packard Development Company, L.P. Dynamic load balancing of a network of client and server computer
US6230200B1 (en) * 1997-09-08 2001-05-08 Emc Corporation Dynamic modeling for resource allocation in a file server
US6230183B1 (en) * 1998-03-11 2001-05-08 International Business Machines Corporation Method and apparatus for controlling the number of servers in a multisystem cluster
US7233978B2 (en) * 1998-07-08 2007-06-19 Econnectix, Llc Method and apparatus for managing location information in a network separate from the data to which the location information pertains
US6564216B2 (en) * 1998-10-29 2003-05-13 Nortel Networks Limited Server manager
US6526448B1 (en) 1998-12-22 2003-02-25 At&T Corp. Pseudo proxy server providing instant overflow capacity to computer networks
AU4344900A (en) * 1999-04-12 2000-11-14 Rainfinity, Inc. Distributed server cluster for controlling network traffic
US6801949B1 (en) * 1999-04-12 2004-10-05 Rainfinity, Inc. Distributed server cluster with graphical user interface
US6571288B1 (en) * 1999-04-26 2003-05-27 Hewlett-Packard Company Apparatus and method that empirically measures capacity of multiple servers and forwards relative weights to load balancer
US7590739B2 (en) * 1999-11-22 2009-09-15 Akamai Technologies, Inc. Distributed on-demand computing system
US7177901B1 (en) * 2000-03-27 2007-02-13 International Business Machines Corporation Method, system, and computer program product to redirect requests from content servers to load distribution servers and to correct bookmarks
US20020032768A1 (en) * 2000-04-10 2002-03-14 Voskuil Erik K. Method and system for configuring remotely located applications
US20020002603A1 (en) * 2000-04-17 2002-01-03 Mark Vange System and method for web serving
US6859830B1 (en) * 2000-06-23 2005-02-22 Microsoft Corporation Method and system for detecting a dead server
JP3885483B2 (ja) 2000-10-30 2007-02-21 富士通株式会社 サービス実行方法および装置
US6785827B2 (en) * 2000-11-29 2004-08-31 Dell Products L.P. System for determining servers power supply requirement by sampling power usage values thereof at a rate based upon the criticality of its availability
US7570587B1 (en) * 2000-12-14 2009-08-04 Nortel Networks Limited Resource allocation for multi-service gateways
US20030014507A1 (en) * 2001-03-13 2003-01-16 International Business Machines Corporation Method and system for providing performance analysis for clusters
US6859798B1 (en) * 2001-06-20 2005-02-22 Microstrategy, Inc. Intelligence server system
US6922791B2 (en) * 2001-08-09 2005-07-26 Dell Products L.P. Failover system and method for cluster environment
US7213065B2 (en) * 2001-11-08 2007-05-01 Racemi, Inc. System and method for dynamic server allocation and provisioning
US7080378B1 (en) * 2002-05-17 2006-07-18 Storage Technology Corporation Workload balancing using dynamically allocated virtual servers
US7058717B2 (en) * 2002-07-25 2006-06-06 International Business Machines Corporation Method and system for providing highly available services based on a load balancing policy and a reusable connection context object
US7350186B2 (en) * 2003-03-10 2008-03-25 International Business Machines Corporation Methods and apparatus for managing computing deployment in presence of variable workload

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101881637B1 (ko) 2016-05-19 2018-08-24 주식회사 케이티 유전체 데이터 분석을 위한 작업 처리 방법 및 시스템

Also Published As

Publication number Publication date
IL167256A (en) 2010-06-30
BRPI0314012B1 (pt) 2017-03-21
JP3980596B2 (ja) 2007-09-26
BR0314012A (pt) 2005-07-19
JP2005539298A (ja) 2005-12-22
EP1535445B1 (en) 2006-09-27
AU2003259385A1 (en) 2004-03-29
WO2004023757A1 (en) 2004-03-18
EP1535445A1 (en) 2005-06-01
US7930397B2 (en) 2011-04-19
CA2496783A1 (en) 2004-03-18
US20060168224A1 (en) 2006-07-27
CN100479456C (zh) 2009-04-15
DE60308700D1 (de) 2006-11-09
KR20050084802A (ko) 2005-08-29
DE60308700T2 (de) 2007-08-16
TW200404439A (en) 2004-03-16
CN1679300A (zh) 2005-10-05
ATE341147T1 (de) 2006-10-15
TWI253262B (en) 2006-04-11
GB0220846D0 (en) 2002-10-16

Similar Documents

Publication Publication Date Title
KR100629057B1 (ko) 서버의 원격 및 동적 구성 시스템과 그 방법 및 컴퓨터 판독 가능 기록 매체
US10491523B2 (en) Load distribution in data networks
US7463648B1 (en) Approach for allocating resources to an apparatus based on optional resource requirements
US9736234B2 (en) Routing of communications to one or more processors performing one or more services according to a load balancing function
US8234650B1 (en) Approach for allocating resources to an apparatus
US6128644A (en) Load distribution system for distributing load among plurality of servers on www system
US8019870B1 (en) Approach for allocating resources to an apparatus based on alternative resource requirements
US7703102B1 (en) Approach for allocating resources to an apparatus based on preemptable resource requirements
US8032634B1 (en) Approach for allocating resources to an apparatus based on resource requirements
US8874783B1 (en) Method and system for forwarding messages received at a traffic manager
US7103647B2 (en) Symbolic definition of a computer system
US20080281950A1 (en) Method and Device for Peer to Peer File Sharing
US20030069962A1 (en) Method for characterizing and directing real-time Website usage
EP2140351B1 (en) Method and apparatus for cluster data processing
US7783786B1 (en) Replicated service architecture
US7523170B1 (en) Service locator technique implemented in a data network
US6931427B2 (en) Method and apparatus for discovering data services in a distributed computer system
US8402124B1 (en) Method and system for automatic load balancing of advertised services by service information propagation based on user on-demand requests
CN114125051B (zh) 一种动态服务发现的代理方法及装置
CN115516842A (zh) 编排代理服务
US6957247B1 (en) Internet system
US20040059777A1 (en) System and method for distributed component object model load balancing
WO2002039313A2 (en) A data model for automated server configuration
JP2002083150A (ja) コンポーネント・ソフトウェア通信方法及びシステム
JP2002333986A (ja) アプリケーションサーバシステム、プログラムおよびプログラムを記憶した記憶媒体

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20090901

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee