KR102017248B1 - 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법 - Google Patents

트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR102017248B1
KR102017248B1 KR1020147008196A KR20147008196A KR102017248B1 KR 102017248 B1 KR102017248 B1 KR 102017248B1 KR 1020147008196 A KR1020147008196 A KR 1020147008196A KR 20147008196 A KR20147008196 A KR 20147008196A KR 102017248 B1 KR102017248 B1 KR 102017248B1
Authority
KR
South Korea
Prior art keywords
transactional
machine
deployment
machines
transactional middleware
Prior art date
Application number
KR1020147008196A
Other languages
English (en)
Other versions
KR20140074311A (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 KR20140074311A publication Critical patent/KR20140074311A/ko
Application granted granted Critical
Publication of KR102017248B1 publication Critical patent/KR102017248B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • 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/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/508Monitor

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Multi Processors (AREA)

Abstract

시스템 및 방법이 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 리소스들을 동적으로 스케일링 업/다운 시키는 것을 지원할 수 있다. 그룹들 및 머신들과 같은 트랜잭셔널 리소스들은 리소스 사용 변경들에 따라 동적 리소스 브로커를 이용하여 추가 또는 제거될 수 있다. 트랜잭셔널 미들웨어 머신 환경은 상기 트랜잭셔널 미들웨어 머신 환경 내에 디플로이먼트 센터를 포함할 수 있고, 여기서 상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들 및 하나 이상의 디플로이먼트 에이전트들을 유지한다. 상기 하나 이상의 디플로이먼트 에이전트들 각각은 상기 트랜잭셔널 미들웨어 머신 환경에서의 트랜잭셔널 도메인 내의 복수의 트랜잭셔널 미들웨어 머신들 중 트랜잭셔널 미들웨어 머신과 관련된다. 상기 디플로이먼트 센터는 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하고, 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 동작을 한다.

Description

트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법{SYSTEM AND METHOD FOR SUPPORTING A DYNAMIC RESOURCE BROKER IN A TRANSACTIONAL MIDDLEWARE MACHINE ENVIRONMENT}
저작권 공지
본 명세서에서 개시된 부분은 저작권 보호를 받는 내용을 포함한다. 저작권자는 미국특허상표청의 특허 파일 또는 기록에 나타난 대로 본 특허 문서 또는 특허 개시내용을 어느 누군가가 팩시밀리 재생하는 것은 반대하지 않지만, 그 밖의 모든 것은 저작권으로 보호된다.
기술분야
본 발명은 일반적으로, 미들웨어와 같은 컴퓨터 시스템들 및 소프트웨어에 관한 것이며, 특히 트랜잭셔널 미들웨어 머신 환경(transactional middleware machine environment)을 지원하는 것에 관한 것이다.
트랜잭셔널 미들웨어 시스템 또는 트랜잭션 지향 미들웨어(transaction oriented middleware)는 조직 내에서 다양한 트랜잭션들을 프로세스할 수 있는 기업 어플리케이션 서버들을 포함한다. 고성능 네트워크 및 멀티프로세서 컴퓨터와 같은 새로운 기술들의 발달에 따라, 트랜잭셔널 미들웨어의 성능을 더 향상시킬 필요가 있다. 이러한 것들은 대체로 본 발명의 실시예들이 해결하도록 의도된 영역들이다.
트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 리소스들을 동적으로 스케일링 업/다운(scaling up/down)시키는 것을 지원하기 위한 시스템 및 방법이 본 명세서에 개시된다. 그룹들 및 머신들과 같은 트랜잭셔널 리소스들은 리소스 사용 변경들에 따라 동적 리소스 브로커(dynamic resource broker)를 이용하여 추가 또는 제거될 수 있다. 트랜잭셔널 미들웨어 머신 환경은 상기 트랜잭셔널 미들웨어 머신 환경 내에 디플로이먼트 센터(deployment center)를 포함할 수 있고, 여기서 상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들 및 하나 이상의 디플로이먼트 에이전트(agent)들을 유지한다. 상기 하나 이상의 디플로이먼트 에이전트들 각각은 상기 트랜잭셔널 미들웨어 머신 환경에서의 트랜잭셔널 도메인 내의 복수의 트랜잭셔널 미들웨어 머신들 중 트랜잭셔널 미들웨어 머신과 관련된다. 상기 디플로이먼트 센터는 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하고, 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 동작을 한다.
도 1은 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하는 트랜잭셔널 미들웨어 머신 환경의 예를 도시한다.
도 2는 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하기 위한 예시적인 흐름도를 도시한다.
도 3은 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 환경의 패키지 레벨에서 리소스들을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다.
도 4는 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 환경의 머신 레벨에서 리소스들을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다.
도 5는 본 발명의 실시예에 따른 도 1에 도시된 머신 D(110)의 예를 상세하게 도시한다.
복수의 프로세서들을 가진 고속 머신들 및 고성능 네트워크 연결의 장점을 취할 수 있는 트랜잭셔널 미들웨어 시스템을 지원하기 위한 시스템 및 방법이 본 명세서에 기술된다. 동적 리소스 브로커는 리소스 사용 변경들에 따라 그룹들 및 머신들을 추가/제거함으로써 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시킬 수 있다. 트랜잭셔널 미들웨어 머신 환경은 상기 트랜잭셔널 미들웨어 머신 환경 내에 디플로이먼트 센터를 포함할 수 있고, 여기서 상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들 및 하나 이상의 디플로이먼트 에이전트들을 유지하며, 상기 하나 이상의 디플로이먼트 에이전트들 각각은 상기 트랜잭셔널 미들웨어 머신 환경에서의 트랜잭셔널 도메인 내의 복수의 트랜잭셔널 미들웨어 머신들 중 트랜잭셔널 미들웨어 머신과 관련된다. 상기 디플로이먼트 센터는 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하고, 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키는 동작을 한다.
본 발명의 실시예에 따르면, 시스템은, 신속하게 준비될 수 있고 수요에 따라 스케일링될 수 있는 대량의 병렬 인-메모리 그리드(massively parallel in-memory grid)를 포함하는 완전한 Java EE 어플리케이션 서버 컴플렉스를 제공하기 위해 WebLogic Suite와 같은 어플리케이션 서버 또는 미들웨어 환경과 함께 고성능 하드웨어, 예컨대 64-비트 프로세서 기술, 고성능 대용량 메모리 및 리던던트 인피니밴드(redundant InfiniBand) 및 이더넷 네트워킹의 조합을 포함한다. 실시예에 따르면, 시스템은 전체, 절반 또는 1/4 랙(rack) 또는 다른 구성으로 배치될 수 있고, 상기 시스템은 어플리케이션 서버 그리드, 스토리지 영역 네트워크 및 인피니밴드(IB) 네트워크를 제공한다. 미들웨어 머신 소프트웨어는 예컨대, WebLogic Server, JRockit 또는 Hotspot JVM, Oracle Linux 또는 Solaris, 및 Oracle VM과 같은 어플리케이션 서버, 미들웨어 및 다른 기능을 제공할 수 있다. 실시예에 따르면, 시스템은 IB 네트워크를 통해 서로와 통신하는 복수의 컴퓨팅 노드들, IB 스위치 게이트웨이 및 스토리지 노드들 또는 유닛들을 포함할 수 있다. 랙 구성으로 구현될 때, 랙의 사용되지 않은 부분들은 비어있는 채로 있거나 필러(filler)들에 의해 채워질 수 있다.
"Sun Oracle Exalogic" 또는 "Exalogic"으로 본 명세서에서 지칭되는 본 발명의 실시예에 따르면, 시스템은 Oracle Middleware SW suite 또는 Weblogic과 같은 미들웨어 또는 어플리케이션 서버 소프트웨어를 호스팅하기 위한 배치가 용이한 솔루션(easy-to-deploy solution)이다. 본 명세서에 기술된 바와 같이, 실시예에 따르면, 시스템은 하나 이상의 서버들, 스토리지 유닛들, 스토리지 네트워킹을 위한 IB 페브릭 및 미들웨어 어플리케이션을 호스팅하는 데 요구되는 모든 다른 컴포넌트들을 포함하는 "박스 내의 그리드"이다. 상당한 성능이 예컨대, 리얼 어플리케이션 클러스터(Real Application Cluster)들 및 엑사로직 오픈 스토리지(Exalogic Open storage)를 이용하여 대량의 병렬 그리드 구조를 활용함으로써 모든 타입의 미들웨어 어플리케이션들에 제공될 수 있다. 시스템은 선형적 I/O 확장성(scalability)을 포함하는 개선된 성능을 제공하고, 사용 및 관리하기에 간단하며, 작업상 중대한(mission-critical) 가용성 및 신뢰성을 제공한다.
본 발명의 실시예에 따르면, 트랜잭셔널 시스템, 예컨대 Tuxedo는 고성능, 분산형 비즈니스 어플리케이션들의 구성, 실행 및 관리(administration)를 할 수 있는 소프트웨어 모듈들의 세트이며, 다수의 다단(multi-tier) 어플리케이션 개발 툴들에 의해 트랜잭셔널 미들웨어로서 사용되었다. 상기 트랜잭셔널 시스템은 분산형 컴퓨팅 환경들에서 분산형 트랜잭션 프로세싱을 관리하기 위해 사용될 수 있는 미들웨어 플랫폼이다. 이는, 기업의 레거시 어플리케이션들을 언락킹하고 상기 어플리케이션들을 서비스 지향식 구조로 확장하면서도 비제한적 확장성 및 표준-기반의 상호운용성을 제공하기 위한 검증된 플랫폼이다.
동적 리소스 브로커는 리소스 사용 변경들에 따라 그룹들 및 머신들을 추가/제거함으로써 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템, 예컨대 Tuxedo를 동적으로 스케일링 업/다운시킬 수 있다. 따라서, 트랜잭셔널 시스템은 엑사로직 미들웨어 머신들과 같은 복수의 프로세서들을 가진 고속 머신들 및 인피니밴드(IB) 네트워크와 같은 고성능 네트워크 연결의 장점을 취할 수 있다.
트랜잭셔널 시스템을 스케일링 업/다운
본 발명의 실시예에 따르면, 동적 리소스 브로커는 리소스 사용 변경들에 따라 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키기 위해 트랜잭셔널 미들웨어 머신 환경에 지원될 수 있다. 트랜잭셔널 시스템의 동적 리소스 할당/할당해제는 사용자들이 플랙서블 클라우드 환경에서 리소스들을 관리하는 것을 도울 수 있다. 시스템은 리소스 사용 메트릭(metric)들을 수집할 수 있고, 사용자들은 리소스 사용 변경들에 근거하여 트랜잭셔널 리소스들을 스케일링 업/다운시키도록 하는 룰들을 정의하도록 허용된다. 그 다음, 트랜잭셔널 시스템은 리소스 사용 변경들에 근거하여 사용자의 의해 정의된 룰들에 따라 동적으로 스케일링 업 및 다운될 수 있다.
도 1은 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하는 트랜잭셔널 미들웨어 머신 환경의 예를 도시한다. 도 1에 도시된 바와 같이, 트랜잭셔널 미들웨어 머신 환경(100)은 머신들 A 내지 D(101 내지 103 및 110)와 같은 복수의 트랜잭셔널 미들웨어 머신들을 포함한다.
트랜잭셔널 미들웨어 머신 환경에서의 동적 리소스 브로커는 머신 D(110) 상의 데이터 보관소(repository)(107), 머신 D(110) 상의 디플로이먼트 센터(106) 및 하나 이상의 디플로이먼트 에이전트들 즉, 디플로이먼트 에이전트들 A 내지 C(111 내지 113)와 같은 여러 컴포넌트들을 포함할 수 있다. 각각의 디플로이먼트 에이전트는 트랜잭셔널 미들웨어 머신 환경에서, 트랜잭셔널 미들웨어 머신 즉, 머신들 A 내지 C(101 내지 103) 상에 상주한다.
디플로이먼트 센터(106)는 사용자 입력들(120) 모두를 수신할 수 있고, 목적지 머신들 즉, 머신들 A 내지 C(101 내지 103)에 명령들/패키지들을 분배(distribute)하고 상기 목적지 머신들로부터 실행 결과를 수신하는 역할을 한다. 추가적으로, 디플로이먼트 센터(106)는 사용자 입력(120)에 근거하여 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들(116)을 유지할 수 있다.
각각의 디플로이먼트 에이전트 즉, 디플로이먼트 에이전트들 A 내지 C(111 내지 113)는 디플로이먼트 센터(106)로부터 분배 패키지들을 수신하고, 자신이 상주한 특별한 머신 상의 배치/배치해제/관리 태스크들을 실행(execute)시키는 역할을 한다. 더윽이, 각각의 디플로이먼트 에이전트 즉, 디플로이먼트 에이전트들 A 내지 C(111 내지 113)는 상기 디플로이먼트 에이전트가 상주한 특별한 머신의 리소스 사용 메트릭들을 수집하고 이러한 리소스 사용 메트릭들을 상기 디플로이먼트 센터(106)에 다시 보고할 수 있다. 그 다음, 런타임 시, 디플로이먼트 센터(106)는 리소스 사용 변경들에 따라 어떻게 그룹들 및 머신들을 추가 또는 제거할지를 결정할 수 있다. 마지막으로, 디플로이먼트 에이전트 즉, 디플로이먼트 에이전트 A 내지 C(111 내지 113)는 디플로이먼트 센터(106)에 실행 결과를 다시 제공할 수 있다.
도 1에 도시된 바와 같이, 트랜잭셔널 미들웨어 머신 환경(100)은 도메인들 A 내지 B(108 내지 109)과 같은 하나 이상의 트랜잭셔널 도메인들을 포함할 수 있다. 도메인 A(108) 내의 머신들 A 내지 C(101 내지 103)에 더하여, 머신 D(110) 상의 디플로이먼트 센터(106)는 디플로이먼트 에이전트들 E 내지 F(104 내지 105)를 통해 도메인 B(109) 내의 머신들 E 내지 F(104 내지 105)에 대한 머신 사용 정보를 수신할 수 있다. 디플로이먼트 센터(106)는 각각의 트랜잭셔널 도메인 즉, 도메인 A 내지 B(108 내지 109)에 대해 리소스 사용을 개별적으로 관리할 수 있다. 디플로이먼트 센터(106)는 디플로이먼트 에이전트들 즉, 도메인 A(108) 내의 디플로이먼트 에이전트들 A 내지 C(111 내지 113) 및 도메인 B(109) 내의 디플로이먼트 에이전트들 E 내지 F(114 내지 115)에 의해 수집되는 리소스 사용 정보에 근거하여 각각의 트랜잭셔널 도메인 즉, 도메인 A 내지 B(108 내지 109)에서 작업 로드를 동적으로 스케일링 업 및/또는 다운시키는 동작을 한다.
각각의 트랜잭셔널 도메인 즉, 도메인들 A 내지 B(108 내지 109) 내에 트랜잭셔널 서비스들을 제공하기 위해 항상 이용가능할 수 있는 마스터 머신이 존재할 수 있다. 도 1에 도시된 바와 같은 예에서, 머신 A(101)는 도메인 A(108) 내의 마스터 머신일 수 있다. 그러므로, 머신 A(101)의 구성은 변경되지 않을 수 있고, 디플로이먼트 센터(106)는 머신 B(102) 및 머신 C(103)가 런타임 시 활성화되어야 하는지 및 필수 컴포넌트들로 배치되어야 하는지 동적으로 결정할 수 있다.
데이터 보관소(107)는 어플리케이션 패키지들, 분산 패키지들 및 구성 파일들과 같은 어플리케이션 배치에 관련된 정보를 저장하기 위해 사용될 수 있다. 사용자들은 어플리케이션이 다양한 트랜잭셔널 어플리케이션 서버 머신들에 배치되기 전에 데이터 보관소(107) 내로 어플리케이션에 대한 모든 필수 컴포넌트들을 업로드할 수 있다. 디플로이먼트 센터(106)는 데이터 보관소(107)로부터 배치를 위해 요구되는 컴포넌트들을 획득하고 서비스 필요들을 충족시키기 위해 특별한 머신에 특별한 컴포넌트들을 배치할 수 있다.
도 2는 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하기 위한 예시적인 흐름도를 도시한다. 도 2에 도시된 바와 같이, 단계(201)에서, 디플로이먼트 센터가 트랜잭셔널 미들웨어 머신 환경에 제공된다. 단계(202)에서, 하나 이상의 디플로이먼트 에이전트들이 상기 트랜잭셔널 미들웨어 머신 환경에 제공된다. 각각의 디플로이먼트 에이전트는 트랜잭셔널 미들웨어 머신 환경에서의 트랜잭셔널 도메인 내의 트랜잭셔널 미들웨어 머신과 관련된다. 그 다음, 단계(203)에서, 상기 디플로이먼트 센터는 상기 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신한다. 마지막으로, 단계(204)에서, 시스템은 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시킬 수 있다.
하기에 개시된 바와 같이, 트랜잭셔널 시스템은 두 가지 레벨들 즉, 머신 레벨 및 패키지 레벨에서 동적으로 스케일링 업/다운될 수 있다.
패키지 레벨 동적 배치
본 발명의 실시예에 따르면, 동적 리소스 브로커는 패키지 레벨에서 리소스 사용 변경들에 따라 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시킬 수 있다.
도 3은 트랜잭셔널 미들웨어 환경의 패키지 레벨에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다. 도 3에 도시된 바와 같이, 트랜잭셔널 미들웨어 환경은 두 개의 물리 또는 로직 머신들 즉, lclnx24(301) 및 lclnx16(302)을 포함하고, 이 머신들은 두 개의 어플리케이션들 즉, APP1(303) 및 APP2(304)을 동작(running)시키는 역할을 한다.
추가적으로, 트랜잭셔널 미들웨어 환경은 두 개의 가상 머신들 M1(306) 및M2(307)를 포함하는 도메인 DOM1(305)을 포함한다. 가상 머신 M1(306)은 물리 또는 로직 머신 lclnx24(301)에 결속(bind)되고, 어플리케이션 패키지 APP1(303)를 동작시키는 역할을 한다. 마찬가지로, 가상 머신 M2(307)는 물리 또는 로직 머신 lclnx16(302)에 결속되고, 어플리케이션 패키지 APP2(304)를 동작시키는 역할을 한다.
도 3에 도시된 바와 같이, 가상 머신 M2(307) 아래에는 패키지 후보 디렉토리 즉, 후보 패키지(308)가 존재하고, 여기서 사용자는 가상 머신 M2(307)에 추가적인 패키지들 즉, APP3(309) 및 APP4(310)을 추가할 수 있다.
사용자들은 도메인의 상태에 관계없이 가상 머신, 예컨대 M2(307)에 동적 배치를 위한 어플리케이션 패키지들을 추가할 수 있다. 예를 들어, 사용자들은 도메인 DOM 1(305)이 편집, 배치, 부팅 또는 셧 다운(shut down) 상태에 있을 때 가상 머신 M2(307)에 어플리케이션 패키지들을 추가할 수 있다. 이러한 경우, 동적으로 추가된 어플리케이션 패키지들 APP3(309) 및 APP4(310)의 배치 정보는 Tuxedo UBBCONFIG 파일과 같은 기존의 트랜잭셔널 서버 구성 파일 내로 기록될 수 있다. 한편, 시스템은 도메인이 동작 상태에 있을 때 오직 도메인 DOM 1(305)의 패키지 레벨의 동적 스케일링 업/다운을 허용할 수 있다.
하기에 개시된 바와 같이, 시스템은 사용자가 수동 및 자동 두 가지 모두로 패키지 레벨의 동적 배치를 수행하게 할 수 있다.
패키지 레벨의 동적 배치를 수행하기 위한 수동 방식은 사용자에 의해 결정된 조건들이 만족될 때, 예컨대 가상 머신 M2(307)가 언더로딩될 때, 사용자가 어플리케이션 패키지들을 하나씩 수동으로 활성화시키도록 한다. 도 3의 예에서, 사용자는 APP3(309)을 활성화시키는 것을 선택할 수 있다. 그 다음, 시스템은 데이터 보관소에 저장된 관련 어플리케이션 패키지 파일들을 선택하고, 어플리케이션 패키지 APP3(309)를 물리 또는 로직 머신 lclnx16(302)에 배치시키기 위해 Tuxedo 관리 정보 베이스(MIB) 동작들과 같은 일련의 어플리케이션 관리 동작들을 수행하고 이 머신에 포함된 서버들을 부팅시킬 수 있다. 추가적으로, 어플리케이션 패지키 APP3(309)이 활성화된 이후에, 사용자들은 상기 어플리케이션 패키지를 활성화 해제하는 것을 선택할 수 있다. 그 다음, 시스템은 자신의 서버들 모두를 셧다운시키고 물리 또는 로직 머신 lclnx16(302)으로부터 어플리케이션 패키지 APP3(309)를 배치해제시킬 수 있다.
한편, 패키지 레벨의 동적 배치를 수행하기 위한 자동 방식은 시스템이 상기 기술된 바와 같은 MIB 동작들을 자동적으로 수행하게 하며, 사용자에 의해 결정된 조건들은 미리 정의된다. 더욱이, 시스템은 필요 시 어플리케이션 패키지를 자동적으로 배치해제시킬 수 있다.
추가적으로, Tuxedo의 예에서, 동일한 파라미터 교체 룰들이 수동 배치 및 자동 배치 둘 모두에서 상기 MIB 동작들을 수행하기 위해 사용될 수 있다. 추가적으로, 동적 리소스 브로커는 트랜잭셔널 도메인에서 리소스들의 동적 스케일링 업/다운을 수행하기 위해 어플리케이션 패키지들을 배치하기 위한 기존 메커니즘, 예컨대 파일 포맷들을 재사용할 수 있다.
머신 레벨 동적 배치
본 발명의 실시예에 따르면, 동적 리소스 브로커는 머신 레벨에서 리소스 사용 변경들에 따라 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시킬 수 있다.
도 4는 트랜잭셔널 미들웨어 환경의 머신 레벨에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다. 도 4에 도시된 바와 같이, 트랜잭셔널 미들웨어 환경은 4개의 어플리케이션들 APP1(405), APP2(406), APP3(407) 및 APP4(408)을 동작시키는 역할을 하는 4개의 물리 또는 로직 머신들 lclnx24(401), lclnx16(402), lclnx10(403) 및 lclnx11(404)을 포함한다.
트랜잭셔널 미들웨어 환경은 세 개의 가상 머신들 M1(411), M2(412) 및 M3(413)을 포함하는 도메인 DOM1(409)을 포함한다. 가상 머신 M1(411)은 물리 또는 로직 머신 lclnx24(401)에 결속되고, 어플리케이션 패키지 APP1(405)를 동작시키는 역할을 한다. 마찬가지로, 가상 머신 M2(402)는 물리 또는 로직 머신 lclnx16(402)에 결속되고, 어플리케이션 패키지 APP2(406)를 동작시키는 역할을 한다.
도 4에 도시된 바와 같이, 가상 머신 M3(403)은 트랜잭셔널 미들웨어 환경에서 어떤 물리 머신들에도 아직 결속되지 않는다. 가상 머신 M3(403) 아래에는 머신 후보 디렉토리 즉, 후보 머신(410)이 존재하고, 상기 후보 머신은 하나 이상의 로직 또는 물리 후보 머신들 lclnx10(403) 및 lclnx11(404)을 추가하기 위해 사용자들에 의해 사용될 수 있다. 상기 후보 머신들 lclnx10(403) 및 lclnx11(404)은 다른 활성화된 머신들 lclnx24(401) 및 lclnx16(402)과 유사한 구조를 가질 수 있고, 그래서 어플리케이션 패키지들 APP1(405), APP2(406), APP3(407) 및 APP4(408)은 어려움 없이 머신 lclnx10(403) 및 lclnx11(404) 상에서 실행될 수 있다.
예를 들어, 동적 리소스 브로커는 가상 머신 M2(412)가 오버로딩될 때 후보 머신, 예컨대 lclnx10(403)이 가상 머신 M3(403)에 결속되게 할 수 있다. 더욱이, 후보 머신이 가상 머신으로부터 결속해제되면, 다른 후보 머신들, 예컨대 lclnx11(404)이 가상 머신 M3(403)에 결속될 기회를 가질 수 있다.
도 1에 도시된 바와 같이, 동적으로 배치된 후보 머신은 도메인 A(108)의 마스터 노드 즉, 머신 A가 디플로이먼트 센터(106)와 지속적인 연결을 유지하기 때문에 도메인의 마스터 노드가 되지 못할 수 있다. 따라서, 도 4에 도시된 바와 같은 예에서, 후보 머신들 lclnx10(403) 및 lclnx11(404)은 도메인 DOM1(409)의 마스터 노드가 되지 못할 수 있다.
본 발명의 실시예에 따르면, 트랜잭셔널 시스템은 머신 레벨 및 패키지 레벨 둘 모두에서 동적으로 스케일링 업/다운될 수 있다. 사용자들은 패키지 후보 디렉토리 즉, 후보 패키지(415)에 하나 이상의 어플리케이션 패키지들 APP3(407) 및 APP4(408)을 나열할 수 있고, 그래서 어플리케이션 패키지들 APP3(407) 및 APP4(408)은 머신이 동적으로 배치될 때 후보 머신에 배치될 수 있다.
동적 리소스 브로커는 사용자가 수동 및 자동 두 가지 모두로 머신 레벨의 동적 배치를 수행하게 할 수 있다. 동적 리소스 할당/할당해제는 커스토머(customer)가 클라우드 환경에서 보다 플렉서블하게 리소스들을 관리하도록 돕는다. 리소스 사용이 변경될 때, 예컨대 컴퓨팅 노드가 고장(fail)이거나 또는 풀 로드(full load)에 도달할 때, 시스템은 다른 노드들로부터 추가적인 서비스들을 동적으로 제공함으로써 고 가용성 및 확장성(scalability)을 제공할 수 있다. 이러한 스위치는 자동적이며 어떤 수동 개입(intervention)도 없을 수 있다.
머신 레벨의 동적 배치를 수행하기 위한 수동 방식은 하나 이상의 사용자에 의해 결정된 조건들이 만족될 때 사용자들이 후보 머신을 활성화시키게 할 수 있다. 그 다음, 사용자는 패키지 후보 디렉토리 하의 하나 이상의 어플리케이션 패키지들을 활성화시킬 수 있다.
예를 들어, 사용자는 사용자에 의해 결정된 조건들이 만족될 때, 예컨대 가상 머신 M2(412)가 오버로딩될 때 후보 머신 lclnx10(403) 및 후보 어플리케이션 패키지 APP3(407)를 활성화시키는 것을 선택할 수 있다. 그 다음, 시스템은 후보 머신 lclnx10(403)을 활성화시키고 머신 lclnx10(403)에 후보 어플리케이션 패키지 APP3(407)를 배치시키기 위해 Tuxedo MIB 동작과 같은 일련의 관리 동작들을 수행하며 그리고 머신 lclnx10(403)에 포함된 서버들을 부팅시킬 수 있다. 추가적으로, 사용자들은 머신 lclnx10(403)을 배치해제하는 것을 선택할 수 있고, 이 시점에 시스템은 이 머신을 셧다운시키고 상기 머신 상의 모든 어플리케이션 패키지들을 활성화 해제시킬 수 있다.
한편, 패키지 레벨의 동적 배치를 수행하기 위한 자동 방식은 시스템이 상기에 기술된 MIB 동작들을 수행하게 할 수 있고, 사용자에 의해 결정된 조건들은 미리 정의된다. 또한, 시스템은 배치해제 동작들을 자동적으로 수행할 수 있다.
추가적으로, Tuxedo의 예에서, 동일한 파라미터 교체 룰들이 수동 배치 및 자동 배치 둘 모두에서 상기 MIB 동작들을 수행하기 위해 사용될 수 있다. 동적 리소스 브로커는 트랜잭셔널 도메인에서 리소스들을 동적 스케일링 업/다운시키는 것을 수행하기 위해 어플리케이션 패키지들을 배치하기 위한 기존의 메커니즘 예컨대, 파일 포맷들을 재사용할 수 있다.
도 5는 본 발명의 실시예에 따른 도 1에 도시된 머신 D(110)의 예를 상세하게 도시한다. 도 5에 도시된 바와 같이, 머신 D(110)는 하나 이상의 어플리케이션 컴포넌트들이 트랜잭셔널 미들웨어 머신 환경에서의 복수의 트랜잭셔널 미들웨어 머신들 및 디플로이먼트 센터(106)에 배치되기 전에 사용자에 의해 업로드되는 상기 하나 이상의 어플리케이션 컴포넌트들을 저장하기 위한 데이터 보관소(107)를 포함할 수 있다.
디플로이먼트 센터(106)는 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하기 위한 수신 유닛(1061) 및 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에 사용되는 리소스들을 동적으로 스케일링 업/다운시키기 위한 스케일링 업/다운 유닛(1062)을 포함할 수 있다.
일부 실시예들에서, 디플로이먼트 센터(106)는 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하기 위한 유지 유닛(1063), 복수의 트랜잭셔널 도메인들을 관리하기 위한 관리 유닛(1064) 및 기존의 트랜잭셔널 도메인에서 실행되는 하나 이상의 패키지를 동적으로 추가 및 제거하고 기존의 트랜잭셔널 도메인들에서 동작하는 하나 이상의 트랜잭셔널 미들웨어를 동적으로 추가 및 제거하기 위한 추가 또는 제거 유닛(1065)을 더 포함할 수 있다.
본 발명의 다른 양상에서, 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법이 제공되는 바, 상기 방법은 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하는 단계와, 그리고 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 단계를 포함한다.
일부 실시예들에서, 방법은 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하는 것과, 복수의 트랜잭셔널 도메인들을 관리하는 것과, 기존의 트랜잭셔널 도메인에서 실행되는 하나 이상의 패키지를 동적으로 추가 또는 제거하는 것과, 그리고/또는 기존의 트랜잭셔널 도메인에서 동작하는 하나 이상의 트랜잭셔널 미들웨어를 동적으로 추가 또는 제거하는 것을 더 포함할 수 있다.
본 발명의 다른 양상에서, 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템이 제공되는 바, 상기 시스템은 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하기 위한 수단과, 그리고 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키기 위한 수단을 포함한다.
일부 실시예들에서, 시스템은 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하기 위한 수단과, 복수의 트랜잭셔널 도메인들을 관리하기 위한 수단과, 기존의 트랜잭셔널 도메인에서 실행되는 하나 이상의 패키지를 동적으로 추가 또는 제거하기 위한 수단과 그리고/또는 기존 트랜잭셔널 도메인에서 동작하는 하나 이상의 트랜잭셔널 미들웨어를 동적으로 추가 또는 제거하기 위한 수단을 더 포함할 수 있다.
본 발명은 본 발명의 교시들에 따라 프로그램된 하나 이상의 프로세서들, 메모리 및/또는 컴퓨터 판독가능 스토리지 매체를 포함하는 하나 이상의 종래의 범용 또는 특수 디지털 컴퓨터, 컴퓨팅 디바이스, 머신 또는 마이크로프로세서를 이용하여 통상적으로 구현될 수 있다. 적절한 소프트웨어 코딩은 소프트웨어 기술 분야의 숙련자들에게 분명할 바와 같이, 본 발명의 교시들에 근거하여 숙련된 프로그래머들에 의해 쉽게 준비될 수 있다.
일부 실시예들에서, 본 발명은 본 발명의 프로세스들 중 어느 것을 수행하도록 컴퓨터를 프로그램하는 데 사용될 수 있는/명령어들이 저장된 스토리지 매체 또는 컴퓨터 판독가능 매체(들)인 컴퓨터 프로그램 제품을 포함한다. 스토리지 매체는 이들로만 한정되는 것은 아니지만, 플로피 디스크(disk)들, 광학 디스크(disc)들, DVD, CD-ROM들, 마이크로드라이브 및 자기-광학 디스크(disk)들을 포함하는 어떤 타입의 디스크, ROM들, RAM들, EPROM들, EEPROM들, DRAM들, VRAM들, 플래시 메모리 디바이스들, 자기 또는 광학 카드들, (분자 메모리 IC들을 포함하는)나노시스템들 또는, 명령어들 및/또는 데이터를 저장하기에 적절한 어떤 타입의 매체 또는 디바이스를 포함할 수 있다.
본 발명의 상기 상세한 설명은 예시 및 설명을 위해 제공되었다. 본 설명은 완전한 것이거나 또는 정확히 개시된 형태들로만 본 발명을 제한하고자 의도된 것이 아니다. 많은 수정들 및 변형들이 이 기술분야의 숙련자에게 분명할 것이다. 위 실시예들은 본 발명의 원리 및 이의 실용적 응용을 가장 잘 설명하기 위해 선택 및 기술되었으며, 그럼으로써 이 기술분야의 숙련자들은 본 발명에 대한 다양한 실시예들 및 고려되는 특별한 사용에 적합한 다양한 수정들을 이해할 수 있다. 본 발명의 범위는 다음의 특허 청구 범위 및 이의 균등물에 의해 한정되어야 함이 의도된다.

Claims (22)

  1. 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커(dynamic resource broker)를 지원하기 위한 시스템으로서,
    하나 이상의 마이크로프로세서들과;
    트랜잭셔널 도메인의 복수의 물리 머신들 및 복수의 가상 머신들을 포함하는 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 하나 이상의 마이크로프로세서들 상에서 동작(running)하는 디플로이먼트 센터(deployment center)와; 그리고
    복수의 디플로이먼트 에이전트(agent)들을 포함하며, 상기 디플로이먼트 에이전트들 각각은 상기 복수의 가상 머신들 중 하나에서 실행하고 상기 디플로이먼트 센터에 의해 유지되며;
    상기 디플로이먼트 센터는,
    상기 복수의 가상 머신들 중 제1 가상 머신상의 디플로이먼트 에이전트로부터 리소스 사용 정보를 수신하는 동작을 하고 -상기 제1 가상 머신은 어플리케이션 패키지를 실행하기 위해 상기 복수의 물리 머신들 중 제1 물리 머신에 결속되고-;
    상기 복수의 가상 머신들 중 제2 가상 머신을 상기 복수의 물리 머신들 중 제2 물리 머신에 결속하고 그리고 상기 제2 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제2 물리 머신을 활성화시킴으로써, 상기 디플로이먼트 에이전트에 의해 수집되는 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업(scale up)시키는 동작을 하고;
    상기 제1 가상 머신을 상기 제1 물리 머신으로부터 결속 해제하고 그리고 상기 제1 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제1 물리 머신을 비활성화함으로써, 상기 디플로이먼트 에이전트에 의해 수집되는 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 다운(scale down)시키는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  2. 제1항에 있어서,
    상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  3. 삭제
  4. 제1항에 있어서,
    상기 디플로이먼트 센터는 복수의 트랜잭셔널 도메인들을 관리하는 역할을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  5. 제4항에 있어서,
    상기 디플로이먼트 센터는 다른 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 상기 리소스 사용 정보에 근거하여 다른 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  6. 제4항에 있어서,
    각각의 트랜잭셔널 도메인 내에 마스터 머신(master machine)이 존재하고, 상기 각각의 트랜잭셔널 도메인 내의 상기 마스터 머신의 구성은 변경되지 않은 채로 유지되는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  7. 제1항에 있어서,
    하나 이상의 어플리케이션 컴포넌트들이 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 복수의 트랜잭셔널 미들웨어 머신들에 배치되기 전에 사용자에 의해 업로드되는 상기 하나 이상의 어플리케이션 컴포넌트들을 저장하는 데이터 보관소(data repository)를 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  8. 제1항에 있어서,
    상기 트랜잭셔널 미들웨어 머신 환경에서의 적어도 하나의 트랜잭셔널 미들웨어 머신은 머신 목록의 물리 머신에 결속(bind)될 수 있는 가상 머신(virtual machine)인 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  9. 제1항에 있어서,
    상기 디플로이먼트 센터는 기존의 트랜잭셔널 도메인에서 실행(executing)되는 하나 이상의 패키지를 동적으로 추가 또는 제거하는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  10. 제1항에 있어서,
    상기 디플로이먼트 센터는 기존의 트랜잭셔널 도메인에서 동작(running)하는 하나 이상의 트랜잭셔널 미들웨어 머신들을 동적으로 추가 또는 제거하는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템.
  11. 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법으로서,
    복수의 물리 머신들 및 복수의 가상 머신들을 포함하는 트랜잭셔널 도메인의 하나 이상의 마이크로프로세서들 상에서 동작하는 디플로이먼트 센터를 제공하는 단계와;
    복수의 디플로이먼트 에이전트(agent)들을 제공하는 단계 -상기 디플로이먼트 에이전트들 각각은 상기 복수의 가상 머신들 중 하나에서 실행하고 상기 디플로이먼트 센터에 의해 유지되며-;
    상기 디플로이먼트 센터를 통해, 상기 복수의 가상 머신들 중 제1 가상 머신상의 디플로이먼트 에이전트로부터 리소스 사용 정보를 수신하는 단계 -상기 제1 가상 머신은 어플리케이션 패키지를 실행하기 위해 상기 복수의 물리 머신들 중 제1 물리 머신에 결속되고-;
    상기 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 단계를 포함하며,
    상기 스케일링 업시키는 단계는 상기 복수의 가상 머신들 중 제2 가상 머신을 상기 복수의 물리 머신들 중 제2 물리 머신에 결속하고 그리고 상기 제2 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제2 물리 머신을 활성화시키는 단계를 포함하며,
    상기 스케일링 다운시키는 단계는 상기 제1 가상 머신을 상기 제1 물리 머신으로부터 결속 해제하고 그리고 상기 제1 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제1 물리 머신을 비활성화시키는 단계를 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  12. 제11항에 있어서,
    상기 디플로이먼트 센터가 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  13. 삭제
  14. 제11항에 있어서,
    상기 디플로이먼트 센터가 복수의 트랜잭셔널 도메인들을 관리하는 역할을 하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  15. 제14항에 있어서,
    상기 디플로이먼트 센터는 다른 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 상기 리소스 사용 정보에 근거하여 다른 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키는 동작을 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  16. 제14항에 있어서,
    각각의 트랜잭셔널 도메인 내에 마스터 머신을 할당(assign)하는 것과 그리고 상기 각각의 트랜잭셔널 도메인 내의 상기 마스터 머신의 구성이 변경되지 않은 채로 유지되게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  17. 제11항에 있어서,
    하나 이상의 어플리케이션 컴포넌트들이 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 복수의 트랜잭셔널 미들웨어 머신들에 배치되기 전에 사용자에 의해 업로드되는 상기 하나 이상의 어플리케이션 컴포넌트들을 저장하는 데이터 보관소를 제공하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  18. 제11항에 있어서,
    상기 트랜잭셔널 미들웨어 머신 환경에서의 적어도 하나의 트랜잭셔널 미들웨어 머신이 가상 머신이 되게 하는 것을 더 포함하며, 상기 가상 머신은 머신 목록 내의 물리 머신에 결속될 수 있는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  19. 제11항에 있어서,
    상기 디플로이먼트 센터가 기존의 트랜잭셔널 도메인에서 실행되는 하나 이상의 패키지를 동적으로 추가 또는 제거하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  20. 제11항에 있어서,
    상기 디플로이먼트 센터가 기존의 트랜잭셔널 도메인에서 동작하는 하나 이상의 트랜잭셔널 미들웨어 머신들을 동적으로 추가 또는 제거하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법.
  21. 삭제
  22. 청구항 제11 내지 20항 중 어느 한 항의 방법을 수행하도록 하는 프로그램을 저장한 비-휘발성 저장 매체.
KR1020147008196A 2011-09-29 2012-09-25 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법 KR102017248B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201161541059P 2011-09-29 2011-09-29
US61/541,059 2011-09-29
US13/423,024 2012-03-16
US13/423,024 US8825864B2 (en) 2011-09-29 2012-03-16 System and method for supporting a dynamic resource broker in a transactional middleware machine environment
PCT/US2012/057131 WO2013049072A1 (en) 2011-09-29 2012-09-25 System and method for supporting a dynamic resource broker in a transactional middleware machine environment

Publications (2)

Publication Number Publication Date
KR20140074311A KR20140074311A (ko) 2014-06-17
KR102017248B1 true KR102017248B1 (ko) 2019-09-02

Family

ID=47993740

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020147008196A KR102017248B1 (ko) 2011-09-29 2012-09-25 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법
KR1020147008933A KR102001190B1 (ko) 2011-09-29 2012-09-25 트랜잭셔널 미들웨어 머신 환경에서 어플리케이션 컴포넌트들의 자동 디플로이먼트/언디플로이먼트를 지원하기 위한 시스템 및 방법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020147008933A KR102001190B1 (ko) 2011-09-29 2012-09-25 트랜잭셔널 미들웨어 머신 환경에서 어플리케이션 컴포넌트들의 자동 디플로이먼트/언디플로이먼트를 지원하기 위한 시스템 및 방법

Country Status (6)

Country Link
US (3) US8825864B2 (ko)
EP (2) EP2761494B1 (ko)
JP (2) JP6010623B2 (ko)
KR (2) KR102017248B1 (ko)
CN (2) CN103827850B (ko)
WO (2) WO2013049074A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024034708A1 (ko) * 2022-08-11 2024-02-15 엘지전자 주식회사 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치
WO2024034709A1 (ko) * 2022-08-11 2024-02-15 엘지전자 주식회사 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130117749A1 (en) * 2011-11-03 2013-05-09 Microsoft Corporation Provisioning and Managing an Application Platform
EP3137989A4 (en) * 2014-04-30 2018-01-03 Pivotal Software, Inc. Fast deployment across cloud platforms
CN104077131B (zh) * 2014-06-13 2017-08-25 科大讯飞股份有限公司 一种组件部署系统及方法
CN104090799B (zh) * 2014-07-11 2017-10-27 百度在线网络技术(北京)有限公司 一种环境部署方法及装置
US10078619B2 (en) 2014-12-16 2018-09-18 International Business Machines Corporation Dynamic association of application workload tiers to infrastructure elements in a cloud computing environment
WO2016109733A1 (en) * 2014-12-30 2016-07-07 The Regents Of The University Of California Highly sensitive detection of biomolecules using proximity induced bioorthogonal reactions
CN105068868A (zh) * 2015-08-27 2015-11-18 浪潮软件股份有限公司 一种基于Linux的消息中间件快速部署的方法
CN107615260B (zh) 2015-10-22 2021-05-07 甲骨文国际公司 用于在事务处理环境中提供分布式高速缓存的系统和方法
WO2017066966A1 (en) 2015-10-22 2017-04-27 Oracle International Corporation System and method for providing mssq notifications in transactional processing environment
CN105912375A (zh) * 2016-05-31 2016-08-31 乐视控股(北京)有限公司 将应用程序部署至服务器的方法及装置
US11169982B2 (en) 2016-06-30 2021-11-09 Microsoft Technology Licensing, Llc Dynamic deactivation of cold database in database service
US10922301B1 (en) * 2016-07-26 2021-02-16 Amdocs Development Limited Apparatus, computer program, and method for trigger-based tracking of database modifications
CN107885539A (zh) * 2016-09-28 2018-04-06 平安科技(深圳)有限公司 一种中间件管理方法及服务器
US10326834B2 (en) 2016-10-17 2019-06-18 At&T Intellectual Property I, L.P. Efficient un-allocation of cloud resources
CN106598761B (zh) * 2016-12-19 2020-07-14 北京奇虎科技有限公司 基于中间件的事务连接建立方法及装置
JP6868702B2 (ja) * 2017-01-13 2021-05-12 オラクル・インターナショナル・コーポレイション 分散トランザクションミドルウェア環境における条件付き呼び出しパスモニタリングのためのシステムおよび方法
US10498859B2 (en) * 2017-04-06 2019-12-03 Genesys Telecommunications Laboratories, Inc. System and method for self-deploying and self-adapting contact center components
US10120671B1 (en) 2017-08-08 2018-11-06 International Business Machines Corporation Multi-level image extraction
US11074093B2 (en) 2018-06-21 2021-07-27 Hewlett Packard Enterprise Development Lp Virtual machine migration using tracked error statistics for target fibre channel ports
US11228561B2 (en) * 2019-04-23 2022-01-18 Red Hat, Inc. Safe MAC programming support for vNIC
CN110321133B (zh) * 2019-07-05 2023-03-14 恒生电子股份有限公司 H5应用部署方法及装置
KR20230004423A (ko) 2019-10-07 2023-01-06 보스턴 폴라리메트릭스, 인크. 편광을 사용한 표면 법선 감지 시스템 및 방법
CN111124428A (zh) * 2019-12-18 2020-05-08 广东电网有限责任公司 一种基于中创中间件的应用自动化发布方法和相关装置
US11677810B2 (en) 2021-07-23 2023-06-13 International Business Machines Corporation Configuration tool for deploying an application on a server
KR20240120449A (ko) 2023-01-31 2024-08-07 주식회사 엘지유플러스 메시지큐 사용량 기반 오토스케일 시스템 및 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110179132A1 (en) * 2010-01-15 2011-07-21 Mayo Mark G Provisioning Server Resources in a Cloud Resource

Family Cites Families (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075938A (en) 1997-06-10 2000-06-13 The Board Of Trustees Of The Leland Stanford Junior University Virtual machine monitors for scalable multiprocessors
US5995945A (en) 1997-08-25 1999-11-30 I2 Technologies, Inc. System and process for inter-domain planning analysis and optimization using model agents as partial replicas of remote domains
US6640238B1 (en) 1999-08-31 2003-10-28 Accenture Llp Activity component in a presentation services patterns environment
US7657887B2 (en) * 2000-05-17 2010-02-02 Interwoven, Inc. System for transactionally deploying content across multiple machines
US7171654B2 (en) 2000-05-25 2007-01-30 The United States Of America As Represented By The Secretary Of The Navy System specification language for resource management architecture and corresponding programs therefore
US20030050932A1 (en) 2000-09-01 2003-03-13 Pace Charles P. System and method for transactional deployment of J2EE web components, enterprise java bean components, and application data over multi-tiered computer networks
JP2002325111A (ja) * 2001-04-25 2002-11-08 Murata Mfg Co Ltd 通信データ処理装置、通信データ処理プログラム及び記録媒体
US7559059B2 (en) * 2001-09-21 2009-07-07 Bea Systems, Inc. Method and apparatus for smart directories for application deployment
US7107589B1 (en) * 2001-09-28 2006-09-12 Siebel Systems, Inc. Infrastructure for the automation of the assembly of schema maintenance scripts
US7937406B2 (en) 2003-09-11 2011-05-03 Oracle America, Inc. Mechanism for automatically establishing a resource grid
US7506335B1 (en) 2003-11-29 2009-03-17 Cisco Technology, Inc. Method and apparatus for software loading and initialization in a distributed network
US7376945B1 (en) 2003-12-02 2008-05-20 Cisco Technology, Inc. Software change modeling for network devices
US7730482B2 (en) * 2004-06-08 2010-06-01 Covia Labs, Inc. Method and system for customized programmatic dynamic creation of interoperability content
US20060036721A1 (en) * 2004-06-15 2006-02-16 Dong Zhao Run-time tool for network management application
US7712102B2 (en) * 2004-07-30 2010-05-04 Hewlett-Packard Development Company, L.P. System and method for dynamically configuring a plurality of load balancers in response to the analyzed performance data
US7530065B1 (en) * 2004-08-13 2009-05-05 Apple Inc. Mechanism for determining applicability of software packages for installation
US7386585B2 (en) 2004-10-30 2008-06-10 International Business Machines Corporation Systems and methods for storage area network design
CA2594036A1 (en) * 2005-01-06 2006-07-13 Tervela, Inc. Intelligent messaging application programming interface
US20060245354A1 (en) 2005-04-28 2006-11-02 International Business Machines Corporation Method and apparatus for deploying and instantiating multiple instances of applications in automated data centers using application deployment template
US7870568B2 (en) * 2005-06-07 2011-01-11 Datasynapse, Inc. Adaptive shared computing infrastructure for application server-based deployments
US8799431B2 (en) * 2005-08-15 2014-08-05 Toutvirtual Inc. Virtual systems management
US20070180453A1 (en) * 2006-01-27 2007-08-02 International Business Machines Corporation On demand application scheduling in a heterogeneous workload environment
US7519711B2 (en) * 2006-06-15 2009-04-14 International Business Machines Corporation Method for middleware assisted system integration in a federated environment
US8145760B2 (en) * 2006-07-24 2012-03-27 Northwestern University Methods and systems for automatic inference and adaptation of virtualized computing environments
US8443438B1 (en) * 2006-09-06 2013-05-14 Bmc Software, Inc. Method and system for deployment of agents
US7827549B2 (en) * 2006-09-15 2010-11-02 Symantec Corporation Method and system for creating and executing generic software packages
US7865619B2 (en) * 2006-09-29 2011-01-04 Intuit Inc. Method and apparatus for building centralized middleware
US8028048B2 (en) * 2007-02-27 2011-09-27 International Business Machines Corporation Method and apparatus for policy-based provisioning in a virtualized service delivery environment
KR100893601B1 (ko) * 2007-06-28 2009-04-20 한국전자통신연구원 가상화 어플라이언스를 활용한 소프트웨어 벤딩머신에서의서비스 프로비저닝 시스템 및 방법
US20090083732A1 (en) * 2007-09-26 2009-03-26 Microsoft Corporation Creation and deployment of distributed, extensible applications
US8615761B2 (en) 2008-03-07 2013-12-24 Nec Corporation Virtual machine package generation system, virtual machine package generation method, and virtual machine package generation program
US8301742B2 (en) * 2008-04-07 2012-10-30 International Business Machines Corporation Systems and methods for coordinated management of power usage and runtime performance in performance-managed computing environments
US8903981B2 (en) * 2008-05-05 2014-12-02 International Business Machines Corporation Method and system for achieving better efficiency in a client grid using node resource usage and tracking
US8516037B2 (en) * 2008-06-16 2013-08-20 International Business Machines Corporation Methods for dynamic partitioning of applications in client-server environments
US8429650B2 (en) * 2008-11-14 2013-04-23 Oracle International Corporation System and method of security management for a virtual environment
JPWO2010100867A1 (ja) * 2009-03-05 2012-09-06 日本電気株式会社 仮想計算機管理システム
JP5427504B2 (ja) * 2009-08-03 2014-02-26 株式会社エヌ・ティ・ティ・データ サービス実行装置、サービス実行方法
US8924569B2 (en) * 2009-12-17 2014-12-30 Intel Corporation Cloud federation as a service
US9122536B2 (en) * 2009-12-30 2015-09-01 Bmc Software, Inc. Automating application provisioning for heterogeneous datacenter environments
CN102135899B (zh) * 2010-01-26 2013-08-28 华为技术有限公司 一种事务控制方法及装置
US8402139B2 (en) * 2010-02-26 2013-03-19 Red Hat, Inc. Methods and systems for matching resource requests with cloud computing environments
US10514940B2 (en) * 2010-03-17 2019-12-24 Microsoft Technology Licensing, Llc Virtual application package reconstruction
US8572612B2 (en) * 2010-04-14 2013-10-29 International Business Machines Corporation Autonomic scaling of virtual machines in a cloud computing environment
US8812653B2 (en) * 2010-08-05 2014-08-19 Novell, Inc. Autonomous intelligent workload management
US20120096453A1 (en) * 2010-10-14 2012-04-19 Meilstrup Jon A Software Package Management Mechanism
US8863114B2 (en) * 2010-12-06 2014-10-14 Red Hat, Inc. Managing software packages using a version control system
US8607225B2 (en) * 2010-12-28 2013-12-10 Oracle International Corporation Managed upgrades of components in an integrated software and hardware system
US9600523B2 (en) * 2011-01-19 2017-03-21 Oracle International Corporation Efficient data collection mechanism in middleware runtime environment
US8874742B2 (en) * 2011-07-11 2014-10-28 Oracle International Corporation System and method for supporting virtual machine migration in a middleware machine environment
US8856337B2 (en) * 2011-08-16 2014-10-07 Hitachi, Ltd. Method and apparatus of cluster system provisioning for virtual maching environment
US8832239B2 (en) * 2011-09-26 2014-09-09 International Business Machines Corporation System, method and program product for optimizing virtual machine placement and configuration

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110179132A1 (en) * 2010-01-15 2011-07-21 Mayo Mark G Provisioning Server Resources in a Cloud Resource

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024034708A1 (ko) * 2022-08-11 2024-02-15 엘지전자 주식회사 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치
WO2024034709A1 (ko) * 2022-08-11 2024-02-15 엘지전자 주식회사 신호 처리 장치, 및 이를 구비하는 차량용 디스플레이 장치

Also Published As

Publication number Publication date
WO2013049074A1 (en) 2013-04-04
JP2014528613A (ja) 2014-10-27
EP2761494B1 (en) 2019-03-13
US8825864B2 (en) 2014-09-02
US20130086576A1 (en) 2013-04-04
US9003397B2 (en) 2015-04-07
CN103827822A (zh) 2014-05-28
JP6010623B2 (ja) 2016-10-19
KR20140070583A (ko) 2014-06-10
JP6129851B2 (ja) 2017-05-17
JP2014528614A (ja) 2014-10-27
CN103827850B (zh) 2017-07-28
WO2013049072A1 (en) 2013-04-04
KR102001190B1 (ko) 2019-10-01
CN103827822B (zh) 2017-06-13
EP2761494A1 (en) 2014-08-06
US9559977B2 (en) 2017-01-31
EP2761445A4 (en) 2015-08-26
US20130086271A1 (en) 2013-04-04
KR20140074311A (ko) 2014-06-17
US20140337533A1 (en) 2014-11-13
CN103827850A (zh) 2014-05-28
EP2761494A4 (en) 2015-08-26
EP2761445A1 (en) 2014-08-06

Similar Documents

Publication Publication Date Title
KR102017248B1 (ko) 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법
US11023330B2 (en) Efficient scheduling of backups for cloud computing systems
US11106508B2 (en) Elastic multi-tenant container architecture
US9075661B2 (en) Placing objects on hosts using hard and soft constraints
US8789043B2 (en) Optimized placement planning for virtual machines in a network by breaking relocation graph into one or more cores to apply different solutions
US20180007127A1 (en) Managing software licenses in a disaggregated environment
US10158579B2 (en) Resource silos at network-accessible services
Xu Cloud computing: An emerging technology
EP3234774A1 (en) Elasticity for highly availabile applications
US11461120B2 (en) Methods and apparatus for rack nesting in virtualized server systems
KR20150023354A (ko) 트랜잭셔널 미들웨어 머신 환경에서 묵시적 버저닝을 지원하기 위한 시스템 및 방법
US20220129294A1 (en) Virtualization platform and virtualization platform scaling management method
WO2016090485A1 (en) System and method for routing computing workloads based on proximity
CN111831393A (zh) 一种管理虚拟机的方法、一种服务器和存储介质
US11354180B2 (en) Secure backwards compatible orchestration of isolated guests
CN112398668B (zh) 一种基于IaaS集群的云平台和节点的切换方法
US20210373926A1 (en) Resource use method, electronic device, and computer program product
Zhang et al. Online Function Caching in Serverless Edge Computing
Anadiotis et al. A system design for elastically scaling transaction processing engines in virtualized servers
Sahu et al. A survey on Kubernetes architec-ture and its significance
Nukada et al. SPARC Enterprise’s Approach to Virtualization and Its Contribution to ICT Society

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant