KR102017248B1 - 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법 - Google Patents
트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템 및 방법 Download PDFInfo
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5061—Partitioning or combining of resources
- G06F9/5072—Grid computing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/508—Monitor
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
저작권 공지
본 명세서에서 개시된 부분은 저작권 보호를 받는 내용을 포함한다. 저작권자는 미국특허상표청의 특허 파일 또는 기록에 나타난 대로 본 특허 문서 또는 특허 개시내용을 어느 누군가가 팩시밀리 재생하는 것은 반대하지 않지만, 그 밖의 모든 것은 저작권으로 보호된다.
기술분야
본 발명은 일반적으로, 미들웨어와 같은 컴퓨터 시스템들 및 소프트웨어에 관한 것이며, 특히 트랜잭셔널 미들웨어 머신 환경(transactional middleware machine environment)을 지원하는 것에 관한 것이다.
트랜잭셔널 미들웨어 시스템 또는 트랜잭션 지향 미들웨어(transaction oriented middleware)는 조직 내에서 다양한 트랜잭션들을 프로세스할 수 있는 기업 어플리케이션 서버들을 포함한다. 고성능 네트워크 및 멀티프로세서 컴퓨터와 같은 새로운 기술들의 발달에 따라, 트랜잭셔널 미들웨어의 성능을 더 향상시킬 필요가 있다. 이러한 것들은 대체로 본 발명의 실시예들이 해결하도록 의도된 영역들이다.
트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 리소스들을 동적으로 스케일링 업/다운(scaling up/down)시키는 것을 지원하기 위한 시스템 및 방법이 본 명세서에 개시된다. 그룹들 및 머신들과 같은 트랜잭셔널 리소스들은 리소스 사용 변경들에 따라 동적 리소스 브로커(dynamic resource broker)를 이용하여 추가 또는 제거될 수 있다. 트랜잭셔널 미들웨어 머신 환경은 상기 트랜잭셔널 미들웨어 머신 환경 내에 디플로이먼트 센터(deployment center)를 포함할 수 있고, 여기서 상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들 및 하나 이상의 디플로이먼트 에이전트(agent)들을 유지한다. 상기 하나 이상의 디플로이먼트 에이전트들 각각은 상기 트랜잭셔널 미들웨어 머신 환경에서의 트랜잭셔널 도메인 내의 복수의 트랜잭셔널 미들웨어 머신들 중 트랜잭셔널 미들웨어 머신과 관련된다. 상기 디플로이먼트 센터는 하나 이상의 디플로이먼트 에이전트들로부터 머신 사용 정보를 수신하고, 상기 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 리소스 사용 정보에 근거하여 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 동작을 한다.
도 1은 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하는 트랜잭셔널 미들웨어 머신 환경의 예를 도시한다.
도 2는 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 머신 환경에서 트랜잭셔널 시스템을 동적으로 스케일링 업/다운시키는 것을 지원하기 위한 예시적인 흐름도를 도시한다.
도 3은 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 환경의 패키지 레벨에서 리소스들을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다.
도 4는 본 발명의 실시예에 따른 트랜잭셔널 미들웨어 환경의 머신 레벨에서 리소스들을 동적으로 스케일링 업/다운시키는 것의 예를 도시한다.
도 5는 본 발명의 실시예에 따른 도 1에 도시된 머신 D(110)의 예를 상세하게 도시한다.
도 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)
- 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커(dynamic resource broker)를 지원하기 위한 시스템으로서,
하나 이상의 마이크로프로세서들과;
트랜잭셔널 도메인의 복수의 물리 머신들 및 복수의 가상 머신들을 포함하는 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 하나 이상의 마이크로프로세서들 상에서 동작(running)하는 디플로이먼트 센터(deployment center)와; 그리고
복수의 디플로이먼트 에이전트(agent)들을 포함하며, 상기 디플로이먼트 에이전트들 각각은 상기 복수의 가상 머신들 중 하나에서 실행하고 상기 디플로이먼트 센터에 의해 유지되며;
상기 디플로이먼트 센터는,
상기 복수의 가상 머신들 중 제1 가상 머신상의 디플로이먼트 에이전트로부터 리소스 사용 정보를 수신하는 동작을 하고 -상기 제1 가상 머신은 어플리케이션 패키지를 실행하기 위해 상기 복수의 물리 머신들 중 제1 물리 머신에 결속되고-;
상기 복수의 가상 머신들 중 제2 가상 머신을 상기 복수의 물리 머신들 중 제2 물리 머신에 결속하고 그리고 상기 제2 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제2 물리 머신을 활성화시킴으로써, 상기 디플로이먼트 에이전트에 의해 수집되는 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업(scale up)시키는 동작을 하고;
상기 제1 가상 머신을 상기 제1 물리 머신으로부터 결속 해제하고 그리고 상기 제1 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제1 물리 머신을 비활성화함으로써, 상기 디플로이먼트 에이전트에 의해 수집되는 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 다운(scale down)시키는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제1항에 있어서,
상기 디플로이먼트 센터는 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 삭제
- 제1항에 있어서,
상기 디플로이먼트 센터는 복수의 트랜잭셔널 도메인들을 관리하는 역할을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제4항에 있어서,
상기 디플로이먼트 센터는 다른 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 상기 리소스 사용 정보에 근거하여 다른 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제4항에 있어서,
각각의 트랜잭셔널 도메인 내에 마스터 머신(master machine)이 존재하고, 상기 각각의 트랜잭셔널 도메인 내의 상기 마스터 머신의 구성은 변경되지 않은 채로 유지되는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제1항에 있어서,
하나 이상의 어플리케이션 컴포넌트들이 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 복수의 트랜잭셔널 미들웨어 머신들에 배치되기 전에 사용자에 의해 업로드되는 상기 하나 이상의 어플리케이션 컴포넌트들을 저장하는 데이터 보관소(data repository)를 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제1항에 있어서,
상기 트랜잭셔널 미들웨어 머신 환경에서의 적어도 하나의 트랜잭셔널 미들웨어 머신은 머신 목록의 물리 머신에 결속(bind)될 수 있는 가상 머신(virtual machine)인 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제1항에 있어서,
상기 디플로이먼트 센터는 기존의 트랜잭셔널 도메인에서 실행(executing)되는 하나 이상의 패키지를 동적으로 추가 또는 제거하는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 제1항에 있어서,
상기 디플로이먼트 센터는 기존의 트랜잭셔널 도메인에서 동작(running)하는 하나 이상의 트랜잭셔널 미들웨어 머신들을 동적으로 추가 또는 제거하는 동작을 하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 시스템. - 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법으로서,
복수의 물리 머신들 및 복수의 가상 머신들을 포함하는 트랜잭셔널 도메인의 하나 이상의 마이크로프로세서들 상에서 동작하는 디플로이먼트 센터를 제공하는 단계와;
복수의 디플로이먼트 에이전트(agent)들을 제공하는 단계 -상기 디플로이먼트 에이전트들 각각은 상기 복수의 가상 머신들 중 하나에서 실행하고 상기 디플로이먼트 센터에 의해 유지되며-;
상기 디플로이먼트 센터를 통해, 상기 복수의 가상 머신들 중 제1 가상 머신상의 디플로이먼트 에이전트로부터 리소스 사용 정보를 수신하는 단계 -상기 제1 가상 머신은 어플리케이션 패키지를 실행하기 위해 상기 복수의 물리 머신들 중 제1 물리 머신에 결속되고-;
상기 리소스 사용 정보에 근거하여 상기 트랜잭셔널 도메인에서 사용되는 리소스들을 동적으로 스케일링 업/다운시키는 단계를 포함하며,
상기 스케일링 업시키는 단계는 상기 복수의 가상 머신들 중 제2 가상 머신을 상기 복수의 물리 머신들 중 제2 물리 머신에 결속하고 그리고 상기 제2 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제2 물리 머신을 활성화시키는 단계를 포함하며,
상기 스케일링 다운시키는 단계는 상기 제1 가상 머신을 상기 제1 물리 머신으로부터 결속 해제하고 그리고 상기 제1 가상 머신상에서 상기 어플리케이션 패키지 및 상기 제1 물리 머신을 비활성화시키는 단계를 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제11항에 있어서,
상기 디플로이먼트 센터가 상기 트랜잭셔널 미들웨어 머신 환경을 위한 하나 이상의 디플로이먼트 정책들을 유지하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 삭제
- 제11항에 있어서,
상기 디플로이먼트 센터가 복수의 트랜잭셔널 도메인들을 관리하는 역할을 하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제14항에 있어서,
상기 디플로이먼트 센터는 다른 하나 이상의 디플로이먼트 에이전트들에 의해 수집되는 상기 리소스 사용 정보에 근거하여 다른 트랜잭셔널 도메인에서 사용되는 리소스를 동적으로 스케일링 업/다운시키는 동작을 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제14항에 있어서,
각각의 트랜잭셔널 도메인 내에 마스터 머신을 할당(assign)하는 것과 그리고 상기 각각의 트랜잭셔널 도메인 내의 상기 마스터 머신의 구성이 변경되지 않은 채로 유지되게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제11항에 있어서,
하나 이상의 어플리케이션 컴포넌트들이 상기 트랜잭셔널 미들웨어 머신 환경에서의 상기 복수의 트랜잭셔널 미들웨어 머신들에 배치되기 전에 사용자에 의해 업로드되는 상기 하나 이상의 어플리케이션 컴포넌트들을 저장하는 데이터 보관소를 제공하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제11항에 있어서,
상기 트랜잭셔널 미들웨어 머신 환경에서의 적어도 하나의 트랜잭셔널 미들웨어 머신이 가상 머신이 되게 하는 것을 더 포함하며, 상기 가상 머신은 머신 목록 내의 물리 머신에 결속될 수 있는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제11항에 있어서,
상기 디플로이먼트 센터가 기존의 트랜잭셔널 도메인에서 실행되는 하나 이상의 패키지를 동적으로 추가 또는 제거하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 제11항에 있어서,
상기 디플로이먼트 센터가 기존의 트랜잭셔널 도메인에서 동작하는 하나 이상의 트랜잭셔널 미들웨어 머신들을 동적으로 추가 또는 제거하게 하는 것을 더 포함하는 것을 특징으로 하는 트랜잭셔널 미들웨어 머신 환경에서 동적 리소스 브로커를 지원하기 위한 방법. - 삭제
- 청구항 제11 내지 20항 중 어느 한 항의 방법을 수행하도록 하는 프로그램을 저장한 비-휘발성 저장 매체.
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)
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)
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)
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)
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 |
-
2012
- 2012-03-16 US US13/423,024 patent/US8825864B2/en active Active
- 2012-03-16 US US13/423,035 patent/US9003397B2/en active Active
- 2012-09-25 EP EP12836985.7A patent/EP2761494B1/en active Active
- 2012-09-25 EP EP12835527.8A patent/EP2761445A4/en not_active Ceased
- 2012-09-25 KR KR1020147008196A patent/KR102017248B1/ko active IP Right Grant
- 2012-09-25 JP JP2014533653A patent/JP6010623B2/ja active Active
- 2012-09-25 WO PCT/US2012/057136 patent/WO2013049074A1/en active Application Filing
- 2012-09-25 KR KR1020147008933A patent/KR102001190B1/ko active IP Right Grant
- 2012-09-25 CN CN201280047481.0A patent/CN103827850B/zh active Active
- 2012-09-25 WO PCT/US2012/057131 patent/WO2013049072A1/en active Application Filing
- 2012-09-25 CN CN201280047484.4A patent/CN103827822B/zh active Active
- 2012-09-25 JP JP2014533651A patent/JP6129851B2/ja active Active
-
2014
- 2014-07-25 US US14/340,741 patent/US9559977B2/en active Active
Patent Citations (1)
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)
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 |