CN101136939A - 分布式计算系统和用于在其中执行应用的方法 - Google Patents
分布式计算系统和用于在其中执行应用的方法 Download PDFInfo
- Publication number
- CN101136939A CN101136939A CN 200710136178 CN200710136178A CN101136939A CN 101136939 A CN101136939 A CN 101136939A CN 200710136178 CN200710136178 CN 200710136178 CN 200710136178 A CN200710136178 A CN 200710136178A CN 101136939 A CN101136939 A CN 101136939A
- Authority
- CN
- China
- Prior art keywords
- resource
- key
- module
- application
- distributed computing
- Prior art date
- Legal status (The legal status 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 status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/16—Combinations 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
- G06F15/163—Interprocessor communication
- G06F15/173—Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
- G06F15/17306—Intercommunication techniques
- G06F15/17331—Distributed shared memory [DSM], e.g. remote direct memory access [RDMA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/02—Standardisation; Integration
- H04L41/0233—Object-oriented techniques, for representation of network management data, e.g. common object request broker architecture [CORBA]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/04—Network management architectures or arrangements
- H04L41/046—Network management architectures or arrangements comprising network management agents or mobile agents therefor
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/1008—Server selection for load balancing based on parameters of servers, e.g. available memory or workload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
- H04L67/1004—Server selection for load balancing
- H04L67/101—Server selection for load balancing based on network conditions
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Multi Processors (AREA)
Abstract
一种分布式计算环境,用于在受限的资源可用性期间在降级的状态下执行应用。
Description
技术领域
本发明通常涉及分布式计算,并且更具体地,涉及管理分布式计算环境的资源上的任务执行的方法、装置和计算机程序产品。
背景技术
使用多个计算机来共享和处理信息的演进开始于第一次将两个计算机连接在一起,并且通过诸如集群和网格计算的各种网络形式的诞生而继续演进。
网格计算的框架是资源的大规模组织和共享(其中资源可以存在于多个管理域中),以促进使用通过通信介质连接在一起的高度并行的应用,以便同时执行一个或多个作业请求。每个资源的特性包括例如处理速度、存储能力、许可权利和可用应用类型。
使用网格计算处理所有类型的任务具有若干显著的优点。一个这样的优点是其有效使用成群的资源,以便使得利用不足(under-utilization)最小化。例如,假设供应商突然遇到由于针对龙头产品(blockbuster product)所引起的订单业务75%的增加。如果在该例子中使用传统的系统,则客户将体验到延迟的响应和完成时间、处理瓶颈,并且系统甚至可能由于其受限的或固定的计算和通信资源而使其资源达到过载状态。
在相同情况下提出的网格计算可以动态地调整,以满足变化的商业需要,并且使用其可用资源的网络来对业务的增加立即做出响应。更具体地,随着业务的增加,负责接收和处理订单的应用的实例可以在利用不足的资源上执行,以便客户将不会体验到由于业务增加所引起的任何延迟。
另一个优点是网格计算提供共享诸如硬件、软件和服务的资源作为虚拟资源的能力。这些虚拟资源提供异构网格参与者之间的统一互操作性。每个网格资源可以具有特定的特征、功能性和限制。例如,相比Oracle服务器而言,特定作业可能要求SQL服务器。因此,网格计算架构选择或创建能够支持该特定要求的资源。
主要关注的是有效地使用网格计算架构的资源的能力。实际上,网格资源的共享是构建在该最主要点上。然而,针对网格计算而创建的目前应用被设计为使得期望将要求执行其所有模块以便完成预期的任务或目的。事实是这些应用的一些功能性对于实现基本目的或任务而言是不要求的。随着网格环境的资源变得受限或者受到限制,这些应用中的百分之百的执行要求变为对于运行的应用的数目和与提供最终结果相关联的时间的限制因素。
因此,如果应用可以被设计为使得标识实现基本任务所要求的那些模块或部分(“关键”)以及其执行是可选的那些模块(“非关键”),则将是显著的优点。如果管理网格资源的软件和/或硬件具有关于针对在网格上执行的每个应用的关键和非关键模块的知识,则将是更有利的。当网格的资源变得受限或不可用时,硬件/软件可以进行关于现有的或新的应用是否可以在降级的(degraded)状态下操作(即,仅执行关键模块)的智能决策。
发明内容
在一方面,本发明是一种在具有多个资源的分布式计算环境中执行应用的方法。该方法包括从客户端系统接收指定在分布式计算环境上执行应用的作业请求的步骤。该方法还包括响应于作业请求而取回标识关键模块和非关键模块的应用的模块的描述的步骤,其中关键模块必须被执行,以便实现该应用的主要目的。该方法进一步包括:在提供任何非关键模块的代码之前,当资源变得可用时将每个关键模块的代码提供给该资源。
附图说明
通过参考以下附图,结合所附说明,将更好地理解本发明,并且对于本领域的技术人员来说,本发明的优点将变得更加明显,其中:
图1是示出可以用于实现本发明的实施例的计算机系统的框图;
图2是示出结合图1的客户端系统100使用的网格环境的例子的示意图;
图3是示出根据本发明教导的图2的网格管理系统如何查看已经集成到网格环境中的工作站/台式计算机的例子的示意图;
图4是示出实现图2的网格环境的网格架构的例子的框图;
图5是示出图2的网格环境的逻辑视图的例子的示意图;
图6是详细示出根据本发明教导的图5的SAMA的各个部件的框图;
图7是示出根据本发明优选实施例的教导的应用之一的剖析的例子的示意图;
图8是示出根据本发明教导的由图6的作业调度器使用来处理来自客户端系统的作业请求的方法的流程图;
图9是示出根据本发明教导的应用之一的剖析的例子的示意图;以及
图10是示出根据本发明教导的由图6的作业调度器当资源变得受限时使用来重新分配资源的方法的流程图。
具体实施方式
本发明是一种用于管理和分配针对分布式计算环境的资源的任务的方法、装置和计算机程序产品。在分布式计算环境上执行的每个应用都具有将模块标识为关键或非关键的特征文件(profile)。当分布式计算环境的资源变得受限或者不可用时,本发明检查执行的和新的应用(即,由待处理任务请求用于执行)的特征文件,以确定这些应用是否可以在降级的状态下操作,从而实现最大吞吐量。
现在参考图1,所示的框图示出了可以实施本发明的实施例的计算机系统100。计算机系统100包括各种部件,将在下面更详细地解释每个部件。
总线122代表能够在计算机系统100内提供信息通信的任何类型的设备(例如,系统总线、PCI总线、纵横开关等)。
处理器112可以是通用处理器(例如,IBM制造的PowerPCTM或Intel制造的PentiumTM),在正常操作期间,处理器112在操作系统和应用软件110的控制下处理数据,其中该应用软件110存储在诸如随机存取存储器(RAM)114的动态存储设备和诸如只读存储器(ROM)116的静态存储设备中。操作系统优选地向用户提供图形用户界面(GUI)。
本发明(包括可选的优选实施例)可以被提供作为在机器可读介质上包括的计算机程序产品,该机器可读介质在其上存储有用于对计算机系统100进行编程以执行根据本发明的教导的处理的机器可执行指令。
用在说明书中的术语“机器可读介质”包括参与向处理器112或计算机系统100的其他部件提供指令用以执行的任何介质。这样的介质可以采取多种形式,包括但不限于非易失性介质和传输介质。非易失性介质的普通形式包括例如软盘、软磁盘、硬盘、磁带或任何其他磁介质、致密盘ROM(CD-ROM)、数字视频盘-ROM(DVD-ROM)或任何其他静态或可重写(例如CDRW和DVD RW)的光学介质、穿孔卡或具有孔图案的任何其他物理介质、可编程ROM(PROM)、可擦除PROM(EPROM)、电EPROM(EEPROM)、闪存、任何其他存储器芯片或盒、或者计算机系统100可以读取并且适用于存储指令的任何其他介质。在优选的实施例中,非易失性介质的例子是硬盘驱动器102。
易失性介质包括动态存储器,诸如RAM 114。传输介质包括同轴电缆、铜线或光纤,包括包含总线122的连线。传输介质还可以采取声波或光波的形式,诸如在无线电波或红外数据通信期间产生的那些声波或光波。
此外,本发明可以作为计算机程序产品被下载,其中经由将总线122耦合到通信接口132的网络链路134(例如,调制解调器或网络连接),借助于包含在载波或其他传播介质中的数据信号,可以将程序指令从诸如服务器139的远程计算机传送到正在请求的计算机系统100。
通信接口132提供耦合到网络链路134的双向数据通信,例如,网络链路134可以连接到局域网(LAN)、广域网(WAN),或者如图所示直接连接到因特网服务提供商(ISP)137。具体地,网络链路134可以提供到一个或多个网络的有线和/或无线网络通信。
ISP 137然后通过因特网138或其他网络提供数据通信服务。因特网138可以涉及使用诸如传输控制协议(TCP)和网际协议(IP)的特定协议相互通信的网络和网关的世界范围的集合。ISP 137和因特网138二者都使用携带数字或模拟数据流的电、电磁或光信号。通过各种网络的信号和在网络链路134上并通过通信接口132的信号是传送信息的载波的示例性形式,其中所述信号携带来自或去往计算机系统100的数字或模拟数据。
另外,可以将多个外围部件加入到计算机系统100。例如,音频设备128被附接到总线122上,用于控制音频输出。显示器124也附接到总线122,用于提供可视的、可触知的或其他图形表示格式。显示器124可以包括诸如监视器的不透明表面以及诸如耳机、太阳镜或车辆挡风显示屏的透明表面。
键盘126和光标控制设备130(诸如鼠标、光标跟踪球或光标方向键)耦合到总线122,作为用户输入至计算机系统100的接口。
应用软件110可以是操作系统或者能够在计算机系统100上执行的任何级别的软件。
现在参考图2,示出了结合图1的客户端系统100使用的网格环境的例子的示意图。网格环境240包括网格管理系统150和虚拟资源160。
虚拟资源160代表多种硬件和软件资源。为了便于解释,虚拟资源160被示出为具有服务器集群222、服务器224、工作站和台式计算机226、数据存储系统228和网络230(下文称作“部件”)。然而,应该注意,硬件和软件资源的类型和数目可以是多个。
另外,未示出部件之间的各种网络和连接,以便简化本发明的讨论。这样,应该注意的是,每个部件都可以驻留在可以实现为具有彼此重叠的多种类型的网络(例如,多个大型企业系统、点对点系统和单个计算机系统)的网络基础设施架构的上部。换句话说,部件可以是包括处理任何要求的信息所需的通信路径的单个系统、多个系统或其任何组合。
此外,每个部件还可以是异构的,并且利用独立的管理系统进行区域性地分布(本地、跨国家或甚至跨洲)。
网格管理系统150通过实施诸如开放网格服务架构(OGSA)的网格服务来支持网格环境240。网格服务可以是单一类型的服务或多种类型的服务,诸如计算网格、拾遗(scavenging)网格和数据网格。网格管理系统150还管理来自客户端系统100和其他(未示出)的作业请求,并控制将根据每个作业请求所创建的任务分配到选择的虚拟资源160的部件,用以执行。
在本例子中,所示的客户端系统100驻留在网格环境240之外,同时将作业请求发送给网格管理系统150。可选地,客户端系统100还可以驻留在网格环境240中并共享资源,同时发送作业请求并可选地处理分配的任务。当从作业请求返回结果时,客户端系统100并不知道哪些特定部件执行所要求的任务以完成作业请求。
现在参考图3,示出了根据本发明教导的图2的网格管理系统150如何查看已集成在网格环境240中的工作站/台式计算机226的例子的示意图。工作站/台式计算机226可以例如是图1的计算机系统100。
当诸如计算机系统100的计算机系统被集成到网格环境240中时,其硬件和软件部件成为虚拟资源160(图2)的部件的一部分。更具体地,两个处理器112-113、RAM 114、硬盘驱动器102和应用软件110被网格管理系统150看作是CPU资源313-314、存储器资源314、存储资源302和应用资源310。应该注意,尽管已经将计算机系统100作为例子示出,但是这样的计算机系统100的资源的类型和配置可以跨越由网络或其他装置连接的多个计算机系统进行分布。换句话说,计算机系统300可以是单个计算机或彼此互连的多个计算机的部件。
计算机系统100的集成还引起网格管理系统150的一部分并入到计算机系统300中,如网格管理器和路由器GM 424所表示的那样。GM 424提供计算机系统100的资源、其他GM和发送请求的客户端系统之间的接口。资源监视器422是该接口的一部分,并且监视每个资源(312-313、314、302和310)的状态。
GM 424优选地向其他GM发送状态报告,以指示资源的可用性。状态报告可以包括例如计算机硬件、操作系统和资源的描述。每当系统加入或离开网格环境240时,到达阈值时,预定时间间隔过去时,诸如硬件故障或应用或服务的分派发生故障的预定事件发生时,产生这些状态报告。
虚拟资源160的每个部件由网格管理系统使用正如结合图4所解释的网格架构来管理。
现在参考图4,所示出的框图描述了实现图2的网格环境240的网格架构400的例子。如图所示,网格架构400包括物理和逻辑资源430、Web服务420、安全服务408、网格服务410和应用440层。网格架构400只是可以由网格管理系统150使用来支持网格环境240的各种类型架构的一个例子,并不应当认为它是对本发明的各个方面的限制,相反,应该认为它是解释本发明的便利方式。
物理和逻辑资源层430组织网格环境240的物理和逻辑资源。物理资源通常包括服务器、存储介质、网络等。逻辑资源将物理资源的虚拟表示聚集和创建为可用的资源,诸如操作系统、处理能力、存储器、I/O处理、文件系统、数据库管理器、目录、存储器管理和其他资源。
Web服务层420是网格服务层410与物理和逻辑资源层430之间的接口。该接口可以包括例如在网际协议或其他网络传输层上执行的Web服务描述语言(WSDL)、简单对象访问协议(SOAP)以及可扩展标记语言(XML)。
开放网格服务基础设施(OSGI)用于扩展Web服务层420,以提供动态的和可管理的Web服务,以便对网格环境240的资源进行建模。
安全服务408针对在网格内操作的每个系统的连接层(诸如OPEN安全套接字层(SSL))处的安全性而应用安全协议。
网格服务层410包括安全性服务408、资源管理服务402、信息服务404和数据管理服务406。
资源管理服务402接收作业请求并管理由物理和逻辑资源430对这些请求的处理,以及完成这些请求所得到的任何信息的取回。管理包括监视资源负载和分布作业请求,以便在非高峰和高峰活动期间维持平衡。资源管理服务402还支持允许用户指定优选的性能级别和分布作业请求以便维持指定的性能级别的能力。
通过在必要时将一种协议转为另一种协议,信息服务404支持各种系统之间的数据传输。
数据管理服务406控制在网格环境240内数据的传输和存储,使得数据对于负责执行特定作业请求的资源是可用的。
应用层440表示使用由网格服务层410支持的一个或多个网格服务的应用。这些应用使用网格服务层410和Web服务420而与物理和逻辑资源进行接口连接,以便支持存在于网格环境240内的各个异构系统的交互和操作。
网格环境的逻辑视图对于解释如结合图5所示出和解释的客户端系统100、网格管理系统150和虚拟资源160之间出现的各种操作也是有用的。
现在参考图5,给出示出了图2的网格环境240的逻辑视图的例子的示意图。逻辑上,网格管理系统150的功能性被分散成多个通用管理系统GM(例如,GM 504、510和520)。另外,虚拟资源160也被逻辑地分散成多个资源RS(例如,506、508、512、514、516、522、524和526)。在该视图中,资源不必是物理资源的直接表示,而可以是一组(两个或更多)物理资源的逻辑表示。
网格A表示具有GM 510、RS 512、514和516的网格基础设施。网格B表示具有GM 520、RS 522、524和526的网格基础设施。此时可以假设网格A和B由第一和第二商业来操作,每个商业分别具有针对指定的处理网格服务的关联价格。此时还可以假设RS 506和508是本地资源或在相同的离散资源集合中的资源,其中来自客户端系统100的请求被提交给这些资源。
在该例子中,客户端系统100向GM 504发送作业请求。GM 504搜索可用的资源(506、508、512、514、516、522、524和526),以处理完成作业请求所要求的任务。在此实例中,GM 504检查RS506和/或RS 508是否能够处理该作业请求并且还向其他GM 512和520发送类似的询问。GM 510和520返回关于它们各自的资源(512-516和522-526)对于处理作业请求的可用性和关联价格的报告。
客户端系统100能够查看报告,并根据用户的期望来选择提供的选项之一。例如,客户端系统100可以选择由GM 510提供的选项,该选项将使用GM 504、GM 510、RS 512和514形成虚拟组织来处理作业请求。
在本发明的优选实施例中,服务可用性管理代理(SAMA)530监视网格资源、协调策略、管理应用特征文件、执行分析处理并负责问题分派。换句话说,SAMA 530管理网格环境204的资源,以便在这些资源变得降级或受到限制的时间期间,应用和服务继续操作。降级的发生可以是由系统故障、网络基础设施性能下降(dropping)或变得过载或其他故障而引起的。在特定资源的降级期间,SAMA530可以将应用或服务从一个资源移动到下一个资源,或允许应用在如下解释的降级的方式下继续操作。
目前设计和写入驻留在应用层440中的应用,以便期望其百分之百的模块在一个或多个资源上执行。已经利用该期望设计了这些应用440的执行的管理。然而这些应用440的某些部分对于完成作业请求不是绝对需要的(即,非关键)。
如果网格环境240的管理具有执行应用使得只有关键模块被使用(“降级的状态”)的能力,则当网格环境240变得过载或具有资源问题时,现有的和新的作业请求可以继续被处理。
在本发明的优选实施例中,应用440被设计为使得应用具有关键模块和非关键模块二者。当资源体验到过载或在它们执行所有待处理任务的能力上变得受限时,SAMA 530可以分析应用,以确定用户是否已经指定该应用可以在降级的状态(即,只可以执行关键部分,并且仍可以实现希望的结果)下操作,如下所解释的那样。
现在参考图6,给出详细示出了根据本发明教导的图5的SAMA530的各个部件的框图。SAMA 530包括作业调度器608、关键队列604和非关键队列606、应用剖析库610、应用模块加载器612和应用模块代码库614。
应用剖析库610存储针对每个应用440的剖析,以下结合图7示出和解释该剖析的例子。
现在参考图7,其示出了根据本发明优选实施例的教导的应用440之一的剖析700的例子的示意图。应用剖析700是在本质上类似于面向对象编程和继承(即,具有类似特性的父节点的多个子节点或多个同胞节点)的树。在优选实施例中,根节点702标识应用属性。逻辑体704表示可以使用特有实用程序(utility)706或共享应用708创建的继承的逻辑体。
由于这些属性都是从根节点702继承而来的,所以为设计者提供了使用由网格环境240提供的现有的普遍存在的实用程序(共享的)的能力,或者创建针对特定应用440唯一设计的特有实用程序706的能力。
这些实用程序706和708可以包括例如诸如日志记录706a、错误处理706b、安全性706c、持久存储706d和呈现(用户接口)706f的功能性。
总体上,每个应用特征文件包含模块/实用程序列表,其中每个模块/实用程序包括它们对于由应用440所支持的主要任务是关键还是非关键的指示。表1是应用特征文件可以如何出出现的XML表达的文档类型定义(DTD)的例子。
表1 |
********************************************************************Application Anatomy Profile DTD-Version 1.0********************************************************************+:One or more permitted*:Zero or more permitted?:Optional*******************************************************************--><!--Application Anatomy Profile Definition--><!ELEMENT Application(ApplicationAttr,Module*)><!ELEMENT ApplicationATTR EMPTY><!ATTLIST ApplicationATTRName CDATA#REQUIREDVersion CDATA#REQUIREDDescription CDATA#REQUIREDDevelopername DATA#REQUIREDOwnerName CDATA#REQUIRED><!ELEMENT Module(Resource,Security*)><ATTLIST ModuleModuleName CDATA#REQUIREDModuleVersion CDATA#REQUIREDModuleld CDATA#REQUIREDDevloperName CDATA#REQUIREDOwnerName CDATA#REQUIRED><!ELEMENT Resource EMPTY><!ATTLIST ResourceName CDATA#REQUIREDVersion DATA#REQUIREDDescription CDATA#REQUIRED |
OSName CDATA#REQUIREDOSVersion CDATA#REQUIREDMaxMemorySize CDATA#REQUIREDMinMemorySize CDATA#REQUIREDMaxCPU CDATA#REQUIREDMinCPU CDATA#REQUIREDMaxSpeed CDATA#REQUIREDMinSpeed CDATA#REQUIRED><!ELEMENT Security EMPTY><!ATTLIST SecurityAuthenticationType CDATA#REQUIREDAuthentication Version CDATA#REQUIREDCAname CDATA#REQUIREDCertificate CDATA#REQUIREDSignatureData CDATA#REQUIREDAuthorizationLevel CDATA#REQUIRED> |
应用模块代码库614存储针对每个应用440的实际代码。
应用模块加载器612提供作业调度器608和应用模块代码库614之间的接口。响应于针对特定应用440的请求,应用模块加载器612将找到针对所请求的应用440的代码,并将其提供给作业调度器608,用于分布到适当的资源RS 506-524。
关键和非关键队列604和606用于对分别对应于关键和非关键模块的子任务进行排队。
作业调度器608接收来自客户端100(和其他(未示出))的针对一个或多个应用440的作业请求,并使用一个或多个资源RS506-526来管理与作业请求相关联的任务的处理。以下将结合图8和图9解释作业调度器608与应用剖析库610、应用模块加载器612、应用模块代码库614以及关键和非关键队列604-606的交互。
现在参考图8,其示出了根据本发明教导的由图6的作业调度器608用来处理来自客户端系统100的作业请求的方法的流程图。当接收到来自客户端系统100的针对应用440之一的作业请求时,作业调度器608在应用剖析库610中搜索与指定的应用440相关联的剖析(步骤800-804)。在该特定实例中,可以假设指定的应用440具有图9的应用剖析900。
现在参考图9,示出了根据本发明教导的应用400之一的剖析900的例子的示意图。剖析900包括模块902-916。用户接口902、验证和控制逻辑904、日志记录级别3(错误)910、安全性914和持久存储916模块被认为是关键的,如标记“C”所表示的。日志记录级别1(信息)906、日志记录级别2(警告)908和报告912模块被认为是非关键的,如标记“N”所表示的。
再次参考图8,作业调度器608创建针对每个模块902-916的子任务,将标识为关键的(用户接口902、验证和控制逻辑904、日志记录级别3910、安全性914和持久存储916)和非关键的(日志记录级别1906、日志记录级别2908和报告912)那些子任务分别存储到关键队列604和非关键队列606中(步骤806-808)。
然后作业调度器608在关键队列604中检查任何待处理的子任务(步骤810)。在此特定实例中,针对用户接口902、验证和控制逻辑904、日志记录级别3(错误)910和安全性914的子任务驻留在关键队列604中。如果关键子任务待处理,则作业调度器608搜索可用资源RS 506-526(步骤812)。当资源RS 506-526变得可用时,在处理非关键子任务(步骤814)之前,将资源RS 506-526分配给待处理的关键子任务。在该例子中,资源RS 506-516用于待处理的关键子任务。分配的一部分包括指示应用模块加载器612从应用模块代码库取回针对每个处理的关键子任务的代码,以及将该代码发送给合适的资源506-522。
一旦不存在待处理的关键子任务,作业调度器608在非关键队列606中检查任何待处理的子任务(步骤816)。在该实例中,对于日志记录级别1(信息的)906、日志记录级别2(警告)和报告912模块存在非关键子任务。
如果非关键子任务是待处理的,则作业调度器608搜索可用资源RS 506-526(步骤818)。在该实例中,资源522-526是可用的。当资源RS 506-526变得可用时,作业调度器608检查关键队列604以确保没有新的关键子任务被创建(例如,响应于另一作业请求)(步骤820)。如果关键队列604被占用(occupy),则作业调度器608如前述那样继续针对待处理的关键子任务分配可用资源(步骤814)。
然而,如果在处理非关键子任务的同时没有新的关键子任务被创建,则作业调度器608如前述那样使用应用模块加载器612将这些可用资源分配给待处理的非关键任务(步骤822)。
如果不存在待处理的关键子任务或非关键子任务,则方法结束(步骤824)。
作业调度器608还能够响应于故障或当资源RS 506-526变得受限制并且在关键队列604中存在关键子任务时重新分配资源,如结合图10所解释的那样。
现在参考图10,示出了根据本发明教导的当资源变得受限时由图6的作业调度器608使用来重新分配资源的方法的流程图。在该例子中,可以假设资源RS 506-526已经被分配用于执行与图9的应用800相关联的子任务,如前述结合图8解释的那样。换句话说,RS 506-516分别执行与模块902、904、910和914相关联的子任务,并且RS 522-526分别执行与模块906、908和912相关联的子任务。
诸如节点故障的特定事件或具有用于执行的关键模块的新作业请求可以导致作业调度器608被要求重新分配资源RS 506-526。在本发明的优选的实施例中,可以为每个作业请求分配优先级。根据该优先级,通过去除其非关键子任务,当前执行的作业请求可以被完全代替或在降级的状态下操作。作业调度器608可配置为做出与具有优先级方案相关联的这些决策和类似决策。
此时,可以假设节点故障已经发生,导致资源RS 512无法执行与模块日志记录级别3(错误)810相关联的子任务,从而停止执行(步骤1000)。
作为响应,作业调度器608检查资源RS 506-528,以查看它们中的任何一个是否正在执行非关键子任务(步骤1004)。如果所有资源RS 506-528正在执行关键子任务,则作业调度器608向客户端系统100返回错误(步骤1006和1014)。在该例子中,RS 522-526分别针对模块906、908和912执行非关键子任务。
如果存在正在执行非关键子任务的资源RS 506-526,则作业调度器608去除这些非关键子任务之一,并将其放回非关键队列606用于处理(步骤1008和1010)。在该例子中,在资源RS 524上执行的针对模块906的子任务被去除并被放回非关键队列606。
然后作业调度器608针对从存储在关键队列604中取回的或在故障节点上执行的关键子任务分配资源RS 524。在该例子中,与模块910相关联的关键子任务从资源RS 512移动到资源RS 524(步骤1012)。作业调度器608将应用900标记为在降级的状态下执行,并将该信息提供给客户端系统100。
因此认为:通过前述说明,本发明的操作和构造将是显而易见的。尽管所示出和说明的方法和系统被表征为优选的,但是很明显的是,可以在不偏离如权利要求所限定的本发明的精神和范围的情况下可以做出各种变化和/或修改。
Claims (15)
1.一种在具有多个资源的分布式计算环境中执行应用的方法,所述方法包括步骤:
从客户端系统接收指定在所述分布式计算环境上执行应用的作业请求;
响应于所述作业请求,取回标识关键模块和非关键模块的所述应用的模块的描述,其中所述关键模块必须被执行,以便实现所述应用的主要目的;以及
在提供任何所述非关键模块的代码之前,当资源变得可用时将每个所述关键模块的代码提供给所述资源。
2.根据权利要求1所述的方法,进一步包括步骤:
当资源变得可用时,将每个所述非关键模块的代码提供给所述资源。
3.根据权利要求1所述的方法,其中分布式网络的资源变得受限,并且只执行所述应用的关键模块。
4.根据权利要求2所述的方法,其中执行所述关键模块中的第一关键模块的第一资源发生故障并且没有可以将第一关键模块重新定位到其中的其他资源可用,所述方法进一步包括步骤:
终止在第二资源上执行的非关键模块之一的执行;以及
将第一关键模块重新定位到所述第二资源用以执行。
5.根据权利要求1所述的方法,其中分布式网络的资源变得受限,并且执行所有关键模块以及只执行非关键模块的一部分。
6.根据权利要求5所述的方法,进一步包括步骤:
确定所述资源中的第一资源变得可用;以及
在所述第一资源上执行仍然没有执行的非关键模块之一。
7.根据权利要求6所述的方法,其中所述应用的模块的描述与针对其他应用的模块的描述存储在共同位置中。
8.一种分布式计算系统,具有用于执行应用的多个资源,所述分布式计算系统包括:
用于从客户端系统接收指定在分布式计算系统上执行应用的作业请求的装置;
用于响应于所述作业请求而取回标识关键模块和非关键模块的应用的模块的描述的装置,其中所述关键模块必须被执行,以便实现所述应用的主要目的;以及
用于在提供任何非关键模块的代码之前当资源变得可用时将每个所述关键模块的代码提供给所述资源的装置。
9.根据权利要求8所述的分布式计算系统,进一步包括:
用于当资源变得可用时将每个所述非关键模块的代码提供给所述资源的装置。
10.根据权利要求8所述的分布式计算系统,其中所述分布式网络的资源变得受限,并且只执行所述应用的关键模块。
11.根据权利要求9所述的分布式计算系统,其中执行所述关键模块中的第一关键模块的第一资源发生故障并且没有可以将第一关键模块重新定位到其中的其他资源可用,所述分布式计算系统进一步包括:
用于终止在第二资源上执行的非关键模块之一的执行的装置;以及
用于将第一关键模块重新定位到所述第二资源用以执行的装置。
12.根据权利要求8所述的分布式计算系统,其中分布式网络的资源变得受限,并且执行所有关键模块和只执行非关键模块的一部分。
13.根据权利要求12所述的分布式计算系统,进一步包括:
用于确定所述资源中的第一资源变得可用的装置;以及
用于在所述第一资源上执行仍然没有执行的非关键模块之一的装置。
14.根据权利要求13所述的分布式计算系统,其中所述应用的模块的描述与针对其他应用的模块的描述存储在共同位置中。
15.一种计算机程序产品,包括具有计算机可用程序代码的计算机可用介质,所述计算机可用程序代码用于在分布式计算环境中执行应用,所述计算机可用程序代码包括用于权利要求1至7中的任意一项的方法步骤的计算机可用程序代码。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/468,106 US8903968B2 (en) | 2006-08-29 | 2006-08-29 | Distributed computing environment |
US11/468,106 | 2006-08-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101136939A true CN101136939A (zh) | 2008-03-05 |
CN101136939B CN101136939B (zh) | 2010-12-22 |
Family
ID=39153294
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200710136178 Active CN101136939B (zh) | 2006-08-29 | 2007-07-20 | 分布式计算系统和用于在其中执行应用的方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8903968B2 (zh) |
CN (1) | CN101136939B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102413186A (zh) * | 2011-12-02 | 2012-04-11 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN102520780A (zh) * | 2011-11-22 | 2012-06-27 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN112214282A (zh) * | 2020-10-12 | 2021-01-12 | 成都精灵云科技有限公司 | 分布式系统及支持接口配置的分布式系统 |
Families Citing this family (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7590623B2 (en) | 2005-01-06 | 2009-09-15 | International Business Machines Corporation | Automated management of software images for efficient resource node building within a grid environment |
US7685266B2 (en) * | 2006-09-28 | 2010-03-23 | Intel Corporation | Management of tools that process data to describe a physical layout of a circuit |
US20080270589A1 (en) * | 2007-03-29 | 2008-10-30 | Begrid, Inc. | Multi-Source, Multi-Use Web Processing Through Dynamic Proxy Based Grid Computing Mechanisms |
US8688850B2 (en) * | 2007-04-10 | 2014-04-01 | International Business Machines Corporation | Method for inter-site data stream transfer in cooperative data stream processing |
US8892624B2 (en) * | 2007-04-10 | 2014-11-18 | International Business Machines Corporation | Method for the interoperation of virtual organizations |
US8359347B2 (en) * | 2007-04-10 | 2013-01-22 | International Business Machines Corporation | Method and apparatus for cooperative data stream processing |
US20080256549A1 (en) * | 2007-04-10 | 2008-10-16 | International Business Machines Corporation | System and Method of Planning for Cooperative Information Processing |
US8417762B2 (en) * | 2007-04-10 | 2013-04-09 | International Business Machines Corporation | Mechanism for execution of multi-site jobs in a data stream processing system |
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 |
US20120016721A1 (en) * | 2010-07-15 | 2012-01-19 | Joseph Weinman | Price and Utility Optimization for Cloud Computing Resources |
US8424026B1 (en) * | 2011-10-03 | 2013-04-16 | Cisco Technology, Inc. | Execution of applications distributed across a plurality of computing devices |
US9465957B2 (en) * | 2013-11-07 | 2016-10-11 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Preventing predetermined type of configuration changes to computing devices in a computing system servicing a critical job |
US20150154100A1 (en) * | 2013-12-04 | 2015-06-04 | International Business Machines Corporation | Tuning business software for a specific business environment |
JP2016139273A (ja) * | 2015-01-27 | 2016-08-04 | 富士通株式会社 | 連携システム、連携プログラムおよび連携方法 |
Family Cites Families (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4328397A (en) * | 1980-08-14 | 1982-05-04 | Dictaphone Corporation | Method and apparatus for controlling predetermined machine conditions, such as the operating conditions of a dictation/transcription machine |
US4509126A (en) * | 1982-06-09 | 1985-04-02 | Amca International Corporation | Adaptive control for machine tools |
IL93239A (en) * | 1990-02-01 | 1993-03-15 | Technion Res & Dev Foundation | High flow-rate synchronizer/schedular apparatus for multiprocessors |
US5544347A (en) * | 1990-09-24 | 1996-08-06 | Emc Corporation | Data storage system controlled remote data mirroring with respectively maintained data indices |
US5526517A (en) * | 1992-05-15 | 1996-06-11 | Lsi Logic Corporation | Concurrently operating design tools in an electronic computer aided design system |
US5392052A (en) * | 1993-04-28 | 1995-02-21 | Eberwine; Mark A. | Position reporting emergency location system |
US5440741A (en) * | 1993-09-20 | 1995-08-08 | Motorola, Inc. | Software overload control method |
US5828902A (en) * | 1994-06-10 | 1998-10-27 | Matsushita Electric Ind. | Disc control device having reduced seek time by scheduling disc read requests |
US5617001A (en) * | 1995-02-13 | 1997-04-01 | Texas Instruments Incorporated | A.C. motor starting control circuit utilizing triggerable semiconductor switching device |
US6047323A (en) * | 1995-10-19 | 2000-04-04 | Hewlett-Packard Company | Creation and migration of distributed streams in clusters of networked computers |
US6064677A (en) * | 1996-06-27 | 2000-05-16 | Xerox Corporation | Multiple rate sensitive priority queues for reducing relative data transport unit delay variations in time multiplexed outputs from output queued routing mechanisms |
US5794011A (en) * | 1996-07-19 | 1998-08-11 | Unisys Corporation | Method of regulating the performance of an application program in a digital computer |
US6091709A (en) * | 1997-11-25 | 2000-07-18 | International Business Machines Corporation | Quality of service management for packet switched networks |
US6504845B1 (en) * | 1997-12-19 | 2003-01-07 | Telefonaktiebolaget Lm Ericsson (Publ) | Centralized queuing for ATM node |
US6192314B1 (en) * | 1998-03-25 | 2001-02-20 | Navigation Technologies Corp. | Method and system for route calculation in a navigation application |
US6799283B1 (en) * | 1998-12-04 | 2004-09-28 | Matsushita Electric Industrial Co., Ltd. | Disk array device |
US6570867B1 (en) * | 1999-04-09 | 2003-05-27 | Nortel Networks Limited | Routes and paths management |
US20030195983A1 (en) * | 1999-05-24 | 2003-10-16 | Krause Michael R. | Network congestion management using aggressive timers |
US6516350B1 (en) * | 1999-06-17 | 2003-02-04 | International Business Machines Corporation | Self-regulated resource management of distributed computer resources |
US7165252B1 (en) * | 1999-06-21 | 2007-01-16 | Jia Xu | Method of scheduling executions of processes with various types of timing properties and constraints |
US6625161B1 (en) * | 1999-12-14 | 2003-09-23 | Fujitsu Limited | Adaptive inverse multiplexing method and system |
US6542950B1 (en) * | 2000-05-05 | 2003-04-01 | Lucent Technologies Inc. | Self-adaptive processor overload control system |
US6944798B2 (en) * | 2000-05-11 | 2005-09-13 | Quest Software, Inc. | Graceful degradation system |
US6880086B2 (en) * | 2000-05-20 | 2005-04-12 | Ciena Corporation | Signatures for facilitating hot upgrades of modular software components |
US20020019844A1 (en) * | 2000-07-06 | 2002-02-14 | Kurowski Scott J. | Method and system for network-distributed computing |
US7051330B1 (en) * | 2000-11-21 | 2006-05-23 | Microsoft Corporation | Generic application server and method of operation therefor |
WO2002069575A1 (en) * | 2001-02-28 | 2002-09-06 | Gotham Networks, Inc. | Methods and apparatus for network routing device |
US20040117427A1 (en) * | 2001-03-16 | 2004-06-17 | Anystream, Inc. | System and method for distributing streaming media |
US7263597B2 (en) * | 2001-04-19 | 2007-08-28 | Ciena Corporation | Network device including dedicated resources control plane |
US7146260B2 (en) * | 2001-04-24 | 2006-12-05 | Medius, Inc. | Method and apparatus for dynamic configuration of multiprocessor system |
WO2002093958A1 (en) * | 2001-05-14 | 2002-11-21 | Telefonaktiebolaget Lm Ericsson | Method for protecting against overload in a mobile communication network |
US7099329B1 (en) * | 2001-06-21 | 2006-08-29 | At&T Corp. | Method for preventing overload condition in a circuit switched arrangement |
JP2004534462A (ja) * | 2001-07-05 | 2004-11-11 | サンドバースト コーポレーション | リンク帯域幅割り当て方法および装置 |
JP3975703B2 (ja) * | 2001-08-16 | 2007-09-12 | 日本電気株式会社 | 情報処理システムにおける優先実行制御方法及びその装置並びにプログラム |
US7072354B1 (en) * | 2001-10-03 | 2006-07-04 | Cisco Technology, Inc. | Token registration of managed devices |
JP3813930B2 (ja) * | 2002-01-09 | 2006-08-23 | 松下電器産業株式会社 | プロセッサ及びプログラム実行方法 |
US7231455B2 (en) * | 2002-01-14 | 2007-06-12 | Sun Microsystems, Inc. | System monitoring service using throttle mechanisms to manage data loads and timing |
US7073005B1 (en) * | 2002-01-17 | 2006-07-04 | Juniper Networks, Inc. | Multiple concurrent dequeue arbiters |
US7130891B2 (en) * | 2002-02-04 | 2006-10-31 | Datasynapse, Inc. | Score-based scheduling of service requests in a grid services computing platform |
US20030156547A1 (en) * | 2002-02-15 | 2003-08-21 | Exanet. Inc. | System and method for handling overload of requests in a client-server environment |
US7302691B2 (en) * | 2002-05-10 | 2007-11-27 | Sonics, Incorporated | Scalable low bandwidth multicast handling in mixed core systems |
US7292580B2 (en) * | 2002-06-10 | 2007-11-06 | Lsi Corporation | Method and system for guaranteeing quality of service in a multi-plane cell switch |
US6646595B1 (en) * | 2002-08-09 | 2003-11-11 | Motorola, Inc. | Scalable, reconfigurable GPS receiver |
JP2004089068A (ja) * | 2002-08-30 | 2004-03-25 | Kobe University | Ah受容体リガンド特異的な遺伝子発現誘導因子及びその機能に基づく異種遺伝子誘導発現系の利用技術 |
US8233392B2 (en) * | 2003-07-29 | 2012-07-31 | Citrix Systems, Inc. | Transaction boundary detection for reduction in timeout penalties |
US7055052B2 (en) * | 2002-11-21 | 2006-05-30 | International Business Machines Corporation | Self healing grid architecture for decentralized component-based systems |
US7243352B2 (en) * | 2002-11-27 | 2007-07-10 | Sun Microsystems, Inc. | Distributed process runner |
US7243351B2 (en) * | 2002-12-17 | 2007-07-10 | International Business Machines Corporation | System and method for task scheduling based upon the classification value and probability |
US20060123421A1 (en) * | 2002-12-27 | 2006-06-08 | Loboz Charles Z | Streamlining cpu utilization by delaying transactions |
US7072807B2 (en) * | 2003-03-06 | 2006-07-04 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
JP3971715B2 (ja) * | 2003-03-28 | 2007-09-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 情報処理装置、割込制御装置、制御方法、及びこれらのプログラム |
US7246156B2 (en) * | 2003-06-09 | 2007-07-17 | Industrial Defender, Inc. | Method and computer program product for monitoring an industrial network |
US7644153B2 (en) * | 2003-07-31 | 2010-01-05 | Hewlett-Packard Development Company, L.P. | Resource allocation management in interactive grid computing systems |
US20050034130A1 (en) * | 2003-08-05 | 2005-02-10 | International Business Machines Corporation | Balancing workload of a grid computing environment |
JP2005062927A (ja) * | 2003-08-11 | 2005-03-10 | Hitachi Ltd | 負荷制御方法および装置並びにその処理プログラム |
US7424722B2 (en) * | 2003-08-29 | 2008-09-09 | International Business Machines Corporation | Method and system for creating a dynamic OGSI service proxy framework using runtime introspection of an OGSI service |
US7934020B1 (en) * | 2003-09-19 | 2011-04-26 | Vmware, Inc. | Managing network data transfers in a virtual computer system |
US7457872B2 (en) * | 2003-10-15 | 2008-11-25 | Microsoft Corporation | On-line service/application monitoring and reporting system |
US6993453B2 (en) * | 2003-10-28 | 2006-01-31 | International Business Machines Corporation | Adjusted monitoring in a relational environment |
US8332483B2 (en) * | 2003-12-15 | 2012-12-11 | International Business Machines Corporation | Apparatus, system, and method for autonomic control of grid system resources |
US7680933B2 (en) * | 2003-12-15 | 2010-03-16 | International Business Machines Corporation | Apparatus, system, and method for on-demand control of grid system resources |
US7562143B2 (en) | 2004-01-13 | 2009-07-14 | International Business Machines Corporation | Managing escalating resource needs within a grid environment |
US7552437B2 (en) * | 2004-01-14 | 2009-06-23 | International Business Machines Corporation | Maintaining application operations within a suboptimal grid environment |
US7464159B2 (en) * | 2004-01-14 | 2008-12-09 | International Business Machines Corporation | Managing analysis of a degraded service in a grid environment |
EP1715634A4 (en) * | 2004-02-09 | 2011-06-29 | Vodafone Plc | DISTRIBUTION REQUEST CONTROL METHOD AND UNIT AND DISTRIBUTION REQUEST CONTROL PROGRAM |
US7869794B1 (en) * | 2004-02-18 | 2011-01-11 | Sprint Spectrum L.P. | Method and system for providing timely message delivery |
US8458691B2 (en) * | 2004-04-15 | 2013-06-04 | International Business Machines Corporation | System and method for dynamically building application environments in a computational grid |
US7441241B2 (en) | 2004-05-20 | 2008-10-21 | International Business Machines Corporation | Grid non-deterministic job scheduling |
US7675916B2 (en) * | 2004-07-12 | 2010-03-09 | At&T Intellectual Property I, L.P. | Systems and methods for dynamically adjusting QoS parameters |
JP4394541B2 (ja) * | 2004-08-23 | 2010-01-06 | 日本電気株式会社 | 通信装置、データ通信方法およびプログラム |
US8417814B1 (en) * | 2004-09-22 | 2013-04-09 | Symantec Corporation | Application quality of service envelope |
US7974955B2 (en) * | 2004-09-23 | 2011-07-05 | International Business Machines Corporation | Inhibiting non-critical access based on measured performance in a database system |
US7624208B2 (en) * | 2005-01-14 | 2009-11-24 | International Business Machines Corporation | Method, system, and computer program for managing a queuing system |
US20080307425A1 (en) * | 2005-03-31 | 2008-12-11 | Shailendra Tripathi | Data Processing System and Method |
US8484334B2 (en) * | 2005-03-31 | 2013-07-09 | Sap Aktiengesellschaft | Allocating resources based on rules and events |
EP1989655A2 (en) * | 2005-06-01 | 2008-11-12 | Dennis Drews | Data security |
US7626994B2 (en) * | 2005-11-14 | 2009-12-01 | Broadcom Corporation | Multiple node applications cooperatively managing a plurality of packet switched network pathways |
US7548547B2 (en) * | 2006-03-31 | 2009-06-16 | Microsoft Corporation | Controlling the transfer of terminal server data |
US20100241759A1 (en) * | 2006-07-31 | 2010-09-23 | Smith Donald L | Systems and methods for sar-capable quality of service |
US7844970B2 (en) * | 2006-08-22 | 2010-11-30 | International Business Machines Corporation | Method and apparatus to control priority preemption of tasks |
-
2006
- 2006-08-29 US US11/468,106 patent/US8903968B2/en not_active Expired - Fee Related
-
2007
- 2007-07-20 CN CN 200710136178 patent/CN101136939B/zh active Active
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102520780A (zh) * | 2011-11-22 | 2012-06-27 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN102520780B (zh) * | 2011-11-22 | 2014-07-30 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN102413186A (zh) * | 2011-12-02 | 2012-04-11 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN102413186B (zh) * | 2011-12-02 | 2014-07-30 | 北京星网锐捷网络技术有限公司 | 基于私有云计算的资源调度方法、装置和云管理服务器 |
CN112214282A (zh) * | 2020-10-12 | 2021-01-12 | 成都精灵云科技有限公司 | 分布式系统及支持接口配置的分布式系统 |
Also Published As
Publication number | Publication date |
---|---|
US20080059554A1 (en) | 2008-03-06 |
US8903968B2 (en) | 2014-12-02 |
CN101136939B (zh) | 2010-12-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101136939B (zh) | 分布式计算系统和用于在其中执行应用的方法 | |
CN100405301C (zh) | 在次最佳网格环境中维持应用工作的方法和系统 | |
US10599474B2 (en) | Multi-layer QoS management in a distributed computing environment | |
CN100530133C (zh) | 用于在网格环境内管理工作负荷的方法和系统 | |
US7533170B2 (en) | Coordinating the monitoring, management, and prediction of unintended changes within a grid environment | |
US7287179B2 (en) | Autonomic failover of grid-based services | |
US9075659B2 (en) | Task allocation in a computer network | |
US7406691B2 (en) | Minimizing complex decisions to allocate additional resources to a job submitted to a grid environment | |
US8875152B2 (en) | System, method and computer program product for dynamically increasing resources utilized for processing tasks | |
US9424096B2 (en) | Task allocation in a computer network | |
US8891403B2 (en) | Inter-cluster communications technique for event and health status communications | |
CN110914805A (zh) | 用于分层任务调度的计算系统 | |
US7657590B2 (en) | Load balancing system and method | |
US20080059553A1 (en) | Application structure for supporting partial functionality in a distributed computing infrastructure | |
US20230333880A1 (en) | Method and system for dynamic selection of policy priorities for provisioning an application in a distributed multi-tiered computing environment | |
US20230333884A1 (en) | Method and system for performing domain level scheduling of an application in a distributed multi-tiered computing environment using reinforcement learning | |
US11184219B2 (en) | Methods and systems for troubleshooting anomalous behavior in a data center | |
KR20040110647A (ko) | 각 서버간 부하 분산 시스템 및 그 방법 | |
US11258847B1 (en) | Assignments of incoming requests to servers in computing clusters and other environments | |
Quintero et al. | IBM Technical Computing Clouds | |
US20230333897A1 (en) | Method and system for performing device level management in a distributed multi-tiered computing environment | |
US20230333881A1 (en) | Method and system for performing domain level scheduling of an application in a distributed multi-tiered computing environment | |
Sabharwal et al. | Ongoing Capacity Management for Existing or Live Services | |
Lee et al. | A Scheduling Middleware for Scheduling on a Grid Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20211109 Address after: USA New York Patentee after: Qindarui Co. Address before: Armank, New York, USA Patentee before: International Business Machines Corp. |