CN1552019A - 面向对象的通用自适应控制框架 - Google Patents
面向对象的通用自适应控制框架 Download PDFInfo
- Publication number
- CN1552019A CN1552019A CNA038009625A CN03800962A CN1552019A CN 1552019 A CN1552019 A CN 1552019A CN A038009625 A CNA038009625 A CN A038009625A CN 03800962 A CN03800962 A CN 03800962A CN 1552019 A CN1552019 A CN 1552019A
- Authority
- CN
- China
- Prior art keywords
- tuning system
- goal systems
- tuning
- tolerance
- adapters
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
- G06F11/3466—Performance evaluation by tracing or monitoring
- G06F11/3495—Performance evaluation by tracing or monitoring for systems
-
- 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/5083—Techniques for rebalancing the load in a distributed system
-
- 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/54—Interprogram communication
- G06F9/541—Interprogram communication via adapters, e.g. between incompatible applications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10—TECHNICAL SUBJECTS COVERED BY FORMER USPC
- Y10S—TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y10S707/00—Data processing: database and file management or data structures
- Y10S707/99931—Database or file accessing
- Y10S707/99932—Access augmentation or optimizing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明描述了一种用于构建和实现对计算机系统和应用进行自动调优的通用软件代理方法和系统。该框架定义了模块和接口以允许以模块化方式创建代理。目标系统(260)的细节被适配器(230)获得,适配器(230)提供到目标系统(260)的统一接口。该代理中的数据由度量管理器(240)管理,而控制器模块实现所希望的控制算法。模块化结构和通用接口允许构建可应用于多种目标系统和能使用多种控制算法的通用代理。
Description
技术领域
本发明一般地涉及计算机系统性能,特别涉及以一种通用并独立于应用的方式对计算机系统和应用自动进行性能调优的系统和方法。
背景技术
在过去几年中,分布式和网络化系统的复杂性快速提高。这在很大程度上归因于客户机一服务器体系结构以及其他分布式计算范型(paradigm)的利用。这些计算机系统和软件(操作系统、中间件和应用)已变得如此复杂,以致要把它们配置成具有最佳性能是困难的。
数据库(如ORACLE、DB/2)、消息排队系统(如MQSERIES)以及应用服务器(如WEBSPHERE、DOMINO)等复杂应用差不多有数十个甚至数百个参数来控制它们的配置、行为和性能(DOMINO/DB2系统管理员指南)。这种复杂系统的行为还受系统用户放到系统上的动态载荷的制约。设置各单个参数需要相当多的专业技能,而更大的挑战是对各参数间的相互作用及对系统行为和性能造成的影响的理解。增大对这些系统管理难度的另一因素是这类系统可以是非常动态的,因此可能需要不断地监视和调整它们的参数,例如如果工作载荷随时间变化的话。
这样,不仅由于雇用专家帮助的成本,而且由于系统不是被适当配置而造成的潜在收入损失,使得特定系统的总体拥有成本(TCO)会增大。为降低TCO和加到系统管理人员身上的负担,许多软件供应商现在转向软件代理,以帮助应对管理这些复杂系统的复杂性。
软件代理很适于控制这些系统的任务。现有的专家知识能被一劳永逸地纳入该代理,从而降低对最终用户专业技能的需求。此外,软件代理能与系统更紧密地联系在一起并能实现甚至比人更密切的监视和更新。在控制论、最优化、运筹学以及人工智能领域的新近进展提供了丰富的算法和技术,供动态地调优复杂系统的行为,即使是在没有很多专家知识的情况下。
已开发出多种针对目标的或“定制的自动调优系统”(CATS)。实例包括(1)由Abdelzaher等在“用于QoS自适应通信的终端主机体系结构”IEEE实时技术和应用研讨会,Denver,Colorado,1998年6月中描述的系统,该文内容被包含于此以供参考;以及(2)Aman等在“用于管理分布式数据处理工作载荷的自适应算法”IBM系统杂志,Vol.36,No.2,1997中描述的系统,该文内容被包含于此以供参考。Abdelzaher等的系统使用任务优先级来控制多媒体在通信子系统中的分发的服务质量。Aman等的系统提供一种手段,管理人员利用这一手段指定响应时间和吞吐量这些在MVS(多重虚拟存储)系统中要实现的目标,它使用MVS专用机制实现这些目标。
“调优”这一构想试图通过调整现有的资源分配来改善服务水平。为实现上述目标,需要访问确定资源分配的那些度量和控制。一般地说,有三类度量,即:(1)“配置度量”,它们描述不会由于调优控制而发生改变的与性能有关的目标特性,例如,线(line)速度、处理器速度以及存储器大小;(2)“工作载荷度量”,它们表征目标上的载荷,如到达速率和服务次数;以及(3)“服务水平度量”,它们表征发布性能,例如响应时间、队列长度以及吞吐量。
“调优控制”是能调整目标资源分配因此能改变目标的性能特征的那些参数。我们给出几个实例。LOTUS NOTES作为一个电子邮件系统和应用框架有很大一组控制参数。其中有:NSF BufferPoolSize用于管理存储器,Server MaxSessions用于控制服务器的准入,以及Server_SessionTimeout用于限定空闲用户的数量。在支持差异服务的基于Web应用中,有按照服务类别和服务器类型确定路由分数的调优控制。MQ SERIES作为分布式系统中的可靠传输机制,有对存储器分配和赋予优先级的控制。数据库产品(例如IBM的DB/2)有对类别索引和分配缓冲池大小的控制。
CATS要求能预先识别出度量和调优控制,以便能将解释和调整这些度量和控制的机制纳入自动调优系统。因此,CATS的构建和维护仍需要相当高的专业技术。随着因特网的出现,软件系统及其组件快速地演变,它们处理的工作载荷也是这样。于是,自动调优系统的更新速率很可能必须赶上调优发生的速率。在这种情况下,自动调优的价值被严重削弱。
与自动调优有关的现有技术大多集中于开发与目标系统(即受控制的系统)紧密耦合的特定算法和体系结构。在这些情况中,这些算法不容易再应用于其他系统,其他控制方案也不能插入所提出的体系结构中。
现有的独立于目标的自动调优技术不考虑对访问度量和控制参数给予体系结构上的支持。为了使通用的自动调优系统能从目标那里访问到所需参数,实现通用、自动调优需要很好定义的接口。先前的工作忽略了这些考虑。
通过陈述关于度量的语义和调优控制的操作的信息有助于寻找调优控制的适当设置。特别地,对于目标而言,把度量放入配置、工作载荷以及服务水平这些类别中是有帮助的。这些指定可以有助于通用系统的构建。再有,应该有某种方式来表示对调优控制的调整所造成的定向影响,因为具有这些知识会降低寻找调扰控制的适当配置的复杂性。以往的工作没有集中在这些方面。
发明内容
上述问题以及现有技术的其他相关问题已由本发明的面向对象的通用自适应控制框架予以解决。本发明可应用于一个或多个目标系统,如一个网络中的一个或多个计算机系统。
有利地,本发明提供一个灵活的软件体系结构,用于创建通用自动调优代理(GATA),这些软件代理由一个或多个控制器模块(这里也称作“自动调优控制器”)以及一个或多个目标系统(应用)适配器(这里也称作“自动调优适配器”)构成。再有,本发明允许用户指定该代理的各构件(控制器和适配器)之间的接口,从而能以即插即用的方式替换其他构件。本发明还提供接口允许各控制器以任意的复杂方式互连,允许实现(和构成)任何可计算的控制策略。再有,本发明提供一种机制,允许在该框架内创建的各代理彼此互连和通信,以形成软件代理的潜在复杂网络和/或层次结构。此外,本发明提供定制器(customizer)接口,这允许可选地和灵活地人工监视以及必要的人工干预。
这一体系结构允许在通用框架内实现许多控制策略。再有,它允许该控制策略以模块方式实现,从而它不必与目标系统绑在一起。模块化还允许同一控制策略容易地应用于不同的目标系统。该体系结构的灵活性足以实现需要多重控制器的策略。此外,它使得能够进行代理间通信,这提升了现有基础设施的作用(无需额外编码)。这允许我们构建复杂的代理网络以控制复杂的、分布式系统。
根据本发明的一个方面,提供了一个调优系统,用于对一个或多个目标系统自动进行调优。度量管理器管理对应于一个或多个目标系统的至少一组度量。一个或多个控制器根据这至少一组度量实现一个或多个控制策略。所述的一个或多个控制策略独立于所述的一或多个目标系统中任何一个系统的特定体系结构。一个或多个适配器针对一个或多个控制策略提供与一个或多个目标系统的接口。这一个或多个适配器中至少有一个是针对这一个或多个目标系统中的一个相应系统。
根据本发明的另一方面,该调优系统进一步包含至少一个定制器,用于接收用户输入以便定制度量管理器、一个或多个控制器以及一个或多个适配器中的至少一个。所述的至少一个定制器是一个图形用户接口。
根据本发明的又一个方面,所述的一个或多个控制器包含一个主控制器,用于解决一个或多个控制策略之间的冲突。
根据本发明的再一个方面,该调优系统可以调用其他调优系统,以便针对一个或多个目标系统形成具有层次结构的调优系统。
根据本发明的再一个方面,该调优系统与其他调优系统合作操作以实现这一个或多个控制策略。
根据本发明的再一个方面,这一个或多个控制器中至少有一些是模块,因而能够被从该调优系统中删除、修改或替换。
根据本发明的又再一个方面,这一个或多个适配器中至少有一些是模块化的,因而能够被从该调优系统中删除、修改或替换。
由下文中结合附图对优选实施例的详细描述,本发明的这些及其他方面、特点和优点将变得显而易见。
附图说明
图1是一个方框图,其描绘了根据本发明的一个实施示例可应用本发明的软件代理的典型操作环境;
图2是一个方框图,其描绘了根据本发明的一个实施示例构成一个软件代理的各构件以及它们的相应互连;
图3是一个树形图,其表示了根据本发明的一个实施示例的度量类型层次结构;
图4是一个方框图,其表示了根据本发明的一个实施示例使用单一控制方法控制单一应用的一个简单代理;
图5是一个方框图,其表示了根据本发明的一个实施示例在单一代理中如何能包括多重控制策略;
图6是一个方框图,其描绘了根据本发明的一个实施示例的层次控制配置;
图7是一个方框图,其表示了根据本发明的一个实施示例的一个代理,它是图6所示层次控制配置的一个部分;以及
图8是一个流程图,其说明了根据本发明的一个实施示例创建一个自动调优软件代理的方法。
具体实施方式
图1是一个方框图,其描绘了根据本发明的一个实施示例可应用本发明的软件代理的典型操作环境。代理110接收来自人(或软件)系统管理员实体120的信息,涉及所希望的服务水平要求以及影响控制器操作的各种参数。从目标应用130本身接收对代理110的其他输入,其涉及如这里讨论过的配置、工作载荷和服务水平度量。使用这些输入,代理110计算目标系统130或其他系统的控制设置。然后这些控制设置被传送到目标系统130上。这样,我们看到,代理110针对目标系统130进行闭环操作。图1还表示了,目标系统130的行为受用户140施加于它的工作载荷的控制。图1的最后一个方面是,管理员120除了提供控制器参数外,还能访问与控制器操作有关的度量。这能用于监视自动代理110,以保证它的行为适当并测量它的操作效率。
这样一个代理的内部构件图示于图2。具体地说,图2是一个方框图,其描绘了根据本发明的一个实施示例构成一个软件代理的各构件以及它们的相应互连。我们把这一代理体系结构称作自动调优代理。
图2所示软件代理包括:主自动调优控制器210;一个或多个从属自动调优控制器(下文中统称“从属自动调优控制器”)220;一个或多个自动调优适配器(下文中统称“自动调优控制器”)230;一个资料库250;一个度量管理器240;一个管理员应用编程接口(API)265;定制器270、280和290。图2所示软件代理与一个或多个目标系统和/或一个或多个其他自动调优代理260交互作用(在下文中可交换地称作“目标系统”或“其他自动调优代理”,以表明根据本发明的软件代理可与其他代理以及不是其他代理的目标系统交互作用)。前述表明,一个自动调优代理本身可为另一自动调优代理的目标系统。
一个自动调优代理可由一个或多个自动调优控制器和一个或多个自动调优适配器构成。当在一个代理中有多个自动调优控制器时,它们当中有一个被指定为主控制器210,并负责产生最终控制行动。取决于控制算法,主控制器210可以使用其他(从属)控制器220中的任何控制器作为子例程帮助确定所希望的控制行动。
图3是表示了根据本发明的一个实施示例的度量类型层次结构的树状图。度量390被分成只读度量370和读/写度量380。在这里描述的本发明实施示例中,配置310、工作载荷320和服务水平330度量是只读的,而调优控制340被认为是读/写度量。当然,也可使用其他安排,同时仍保持本发明的精神和范围。
通过度量管理器240管理度量。这一实体提供接口以添加、删除和列表(图2中的getMetric())该代理已知的度量组。度量管理器240允许管理员通过定制器280或管理员API 265来选择已知度量的子集以记录在资料库250中用作日志。度量管理器240提供一组其他功能,如选择日志记录目的地和启动/取消日志记录功能。
自动调优适配器230是该代理与目标应用260的接口。每个自动调优适配器230定义一组它知道的度量。这组度量能通过查询自动调优适配器230获取(图2中的getMetrics())。对于只读的度量,自动调优适配器230提供了一个从目标系统260得到这些度量的最新值的手段(图2中的过程process())。对于调优控制度量,自动调优适配器提供了在目标系统260上设置调优控制之值的手段(图2中的setControl())。自动调优适配器230是目标专用的并且提供一个抽象,从而控制算法本身不需直接绑到一个特定目标系统上。为了把这同一控制算法应用到另一目标系统,只需为那个目标系统替换自动调优适配器。应该指出,目标系统266可以是任何外部实体,包括,例如,另一个自动调优代理。这一性质允许我们构建代理链,下文中我们将用它构建代理层次结构。
自动调优控制器210、220实现一个控制策略。自动调优控制器210、220从度量管理器得到所有感兴趣的度量(使用getMetric())。自动调优控制器210、220提供机制计算误差(与所希望的服务水平的偏差)、计算新的控制值并设置这些值(通过setControl()调用相应的自动调优适配器230部件)。
一个典型的控制循环如下所示:
1.如果(同步方式),则:
a.调用同步适配器
2.计算与所希望的服务水平的误差
3.计算新的控制值(这实现控制算法)
4.如果(当前控制器是主自动调优控制器210),则:
a.设置该控制值
5.重复
应该理解,上面的步骤2(计算误差)是一个可选步骤。尽管大多数控制算法对该误差进行操作,但也有一些算法并不对该误差进行操作。当然,其他变体是可能的而且不难由相关领域普通技术人员构想出来。
自动调优适配器230可以以同步方式或异步方式操作。“同步”是指刚好在计算新的控制值之前调用自动调优适配器230。在异步方式下,自动调优适配器230被假定为以它自己的某一其他(由用户定义的)频率被调用以得到最新的度量值。这一特性允许我们在控制频率不同于读出频率的情况下实现自动调优控制器。
在计算与所希望的服务水平的误差时,自动调优控制器可在必要时访问度量管理器240所知道的任何度量。
每个构件(度量管理器240、自动调优适配器230、自动调优控制器210、220)的用户接口是通过定制器270、280、290提供的。定制器是向每个构件的底层细节提供GUI的实体。在这里描述的实施示例中,为每个作为代理一部分的部件提供一个定制器。当然,其他安排是可能的,包括,但不限于为作为代理一部分的每类部件(如自动调优控制器、适配器等)提供一个定制器。例如,在度量管理器240的情况中,定制器允许用户指定要记录到日志中的度量、该日志文件的位置等等。在自动调优控制器的情况中,定制器允许我们设置控制频率,选择主自动调优控制器等。对于自动调优适配器230,我们可以选择操作方式:同步/异步,并允许人工设置调优控制(在我们不想让自动代理进行操作的情况下)。定制器270、280、290还提供一种方式把可得到的度量展现给用户,从而可实现实时监视。
我们现在提供一些具体实例说明这一框架如何能用于容易地创建软件代理以控制多种计算机系统。为了举例说明一个特定代理,需要如下构件:用于每个目标系统的自动调优适配器以及一个(或多个)控制算法。
图4是一个方框图,其表示了根据本发明的一个实施示例使用单一控制方法控制单一应用的一个简单代理。图4所示软件代理包括:一个单一自动调优控制器410;一个自动调优适配器460;一个资料库450;一个度量管理器440;一个管理员API 465;定制器470、480和490。图4所示软件代理与目标系统或其他自动调优代理(下文中可交换地称作“目标系统”或“其他自动调优代理”)460相互作用。
对于单个目标系统和单个控制算法(如图4所示)的情况,其基本代理创建过程将在下文中针对图8加以说明。
通过简单地用新目标系统的适配器构件代替当前的适配器构件,可以将使用同一控制算法的同一代理用于另一个不同的目标系统。这使得能再次使用现有的知识。类似地,能通过替换控制器模块容易地改变控制算法。
图5是一个方框图,其表示了根据本发明的一个实施示例在单一代理中如何能包括多重控制策略。
图5所示软件代理包括:一个主自动调优控制器510;一个或多个从属自动调优控制器(下文中统称“从属自动调优控制器”)520;一个自动调优适配器560;一个资料库550;一个度量管理器540;一个管理员API565;定制器570、580和590。图5所示软件代理与一个目标系统或另一个自动调优代理(下文中可交换地称作“目标系统”或“其他自动调优代理”)560相互作用。这里,主自动调优控制器510实现顶级控制策略,它利用多个较低级控制策略计算控制值。这一代理可以如下文中针对图8所作描述那样创建。
图6是一个方框图,其描绘了根据本发明的一个实施例的层次控制配置。这里,“US自动调优代理”640依次调用“东海岸”620和“西海岸”630自动调优代理,而这些代理又依次调用它们的下属640、650、660、670。下属640、650、660和670分别控制/管理应用1 681、应用2 682、应用3 683和应用4 684这些应用。这一层次结构能通过该层次结构每一级上的控制器来实现。
图7是一个方框图,其表示了根据本发明的一个实施示例的一个代理,它是图6所示层次控制配置的一个部分。特别是,图7中描绘出在该层次结构的一个内部节点处的一个控制器(一个主自动调优层次控制器710)。在该实施例中,指出这一点是有意义的:对于较高级别的代理,该目标系统是若干较低级代理之一;自动调优代理适配器730使这种递归关系成为可能,适配器730提供到另一个自动调优代理760的标准适配器接口。这一实例说明我们的框架的完全通用性,并且说明我们能容易地使用这同一框架构造复杂的代理和控制器链。除了主自动调优层次结构控制器710、自动调优适配器730以及另一自动调优代理760外,图7所示实施例还包括:一个或多个从属自动调优控制器(下文中称“从属自动调优控制器”)720;一个资料库750;一个度量管理器740;一个管理员API 765;以及定制器770、780和790。
图8是一个流程图,其说明了根据本发明的一个实施例创建一个自动调优软件代理的方法。应该理解,图8所示方法的一些步骤针对自动调优代理的某些部件表述为“指定/创建”。这允许用户根据用户需要和要对目标系统进行的调优来或者创建该部件或者使用当前存在的部件。
一个或多个自动调优适配器被指定/创建(步骤820)。然后确定该代理是否要利用不只一个控制策略或控制算法(步骤830)。如果是,则1到N个(N≥2)自动调优控制器被指定/创建(步骤840),然后方法进入步骤860。否则,单个自动调优控制器被指定/创建(步骤850),然后方法进入步骤870。
在步骤860和870,通过一个或多个定制器,控制参数被选择/产生。步骤860和870二者都可包括选择参数,如控制器频率、同步/异步方式、日志记录的度量等。然而,步骤860必须包括从1到N个自动调优控制器当中选择一个主自动调优控制器。
应该理解,本发明提供一个通用的自动调优系统。有利地,本发明不需要专家把一个目标系统的详细知识纳入到调优系统中。相反,本发明可以学习该目标的性能特性。这可以包括:当目标系统的先验知识可用、可靠和可持久时,使根据本发明的通用自动调优系统利用这种知识。
尽管这里已经参考附图描述了实施示例,但应该理解,本系统和方法不限于那些精确的实施例,本领域技术人员可实现各种其他变化和修改而不脱离本发明的精神和范围。所有这些变化和修改都被包括在所附权利要求定义的本发明范围之内。
Claims (25)
1.一种对一个或多个目标系统自动调优的调优系统,包括:
一个度量管理器,用于管理对应于一个或多个目标系统的至少一组度量;
一个或多个控制器,用于根据所述的至少一组度量实现一个或多个控制策略,所述的一个或多个控制策略独立于所述的一个或多个目标系统中任何一个系统的特定体系结构;以及
一个或多个适配器,用于针对所述的一个或多个控制策略提供与所述的一个或多个目标系统的接口,所述的一个或多个适配器中至少有一个适配器是专用于所述的一个或多个目标系统中的一个相应系统的。
2.权利要求1的调优系统,其中所述的一个或多个控制策略中的每一个策略对应于一个单独的计算机程序。
3.权利要求1的调优系统,进一步包括至少一个定制器,用于接收用户输入以定制所述度量管理器、所述一个或多个控制器以及所述一个或多个适配器中的至少一个,所述的至少一个定制器是一个图形用户接口。
4.权利要求3的调优系统,其中所述定制器接收用户输入,以便为所述度量管理器、所述一个或多个控制器以及所述一个或多个适配器中的至少一个设置缺省值。
5.权利要求3的调优系统,其中所述定制器接收用户输入以选择所述一个或多个适配器中的若干个适配器,这些适配器将用于针对一个或多个目标系统中的一个给定目标系统的调优系统的一种给定应用中。
6.权利要求3的调优系统,其中所述定制器接收用户输入以选择所述一个或多个适配器中的一个或多个类型,这些类型的适配器将用于针对一个或多个目标系统中的一个给定目标系统的调优系统的一种给定应用中。
7.权利要求3的调优系统,其中所述定制器接收用户输入以选择所述一个或多个控制器中的若干个控制器,这些控制器将用于针对一个或多个目标系统中的一个给定目标系统的调优系统的一种给定应用中。
8.权利要求3的调优系统,其中所述定制器接收用户输入以选择所述一个或多个控制器中的一个或多个类型,这些类型的控制器将用于针对一个或多个目标系统中的一个给定目标系统的调优系统的一种给定应用中。
9.权利要求1的调优系统,其中所述一个或多个控制器包括一个主控制器,用于解决所述的一个或多个控制策略之间的冲突。
10.权利要求1的调优系统,其中该组度量包含只读度量和读/写度量。
11.权利要求10的调优系统,其中所述一个或多个适配器直接从一个或多个目标系统得到只读度量的最新值。
12.权利要求10的调优系统,其中所述一个或多个适配器设置所述的一个或多个目标系统上的读/写度量的对应值。
13.权利要求1的调优系统,其中所述度量管理器有能力添加、删除和列出所述的至少一组度量。
14.权利要求1的调优系统,其中该调优系统有能力调用其他调优系统,以形成针对所述的一个或多个目标系统的一个具有层次结构的调优系统。
15.权利要求14的调优系统,其中该调优系统与其他调优系统合作操作以实现所述的一个或多个控制策略。
16.权利要求1的调优系统,进一步包括一个管理员应用编程接口(API),用于指定所述的一个或多个目标系统的服务水平要求。
17.权利要求1的调优系统,进一步包括一个管理员应用编程接口(API),用于监视该调优系统的操作。
18.权利要求1的调优系统,其中所述度量管理器能接收一个输入,该输入指定所述的至少一组度量中的至少一个将被存储的度量子集。
19.权利要求1的调优系统,其中该一个或多个控制器中有不只一个控制器用于针对一个或多个目标系统中的一个给定目标系统的调优系统的一种给定应用中。
20.权利要求1的调优系统,其中所述的一个或多个控制器中至少有一些是模块化的并且能被从该调优系统中删除、修改或替换。
21.权利要求1的系统,其中所述的一个或多个适配器中至少有一些是模块化的并且能被从该调优系统中删除、修改或替换。
22.权利要求1的调优系统,进一步包括一个用于以日志记录度量的改变的共享的实用工具。
23.一种对一个或多个目标系统自动调优的方法,包括如下步骤:
管理对应于一个或多个目标系统的至少一组度量;
提供一个或多个控制器,用于根据所述的至少一组度量实现一个或多个控制策略,所述的一个或多个控制策略独立于所述的一个或多个目标系统中任何一个系统的特定体系结构;
提供一个或多个适配器,所述适配器用于针对所述的一个或多个控制策略提供与一个或多个目标系统的接口,所述的一个或多个适配器中至少有一个专用于所述的一个或多个目标系统中的一个相应系统;以及
使用所述一个或多个适配器自动地与所述的一个或多个目标系统接口,以针对所述一个或多个目标系统实现所述一个或多个控制策略。
24.权利要求23的方法,其中所述提供一个或多个控制器的步骤包括从多个控制器中选择所述的一个或多个控制器的步骤。
25.权利要求23的方法,其中所述提供一个或多个适配器的步骤包括从多个适配器中选择所述的一个或多个适配器的步骤。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/059,665 US7120621B2 (en) | 2002-01-29 | 2002-01-29 | Object-oriented framework for generic adaptive control |
US10/059,665 | 2002-01-29 | ||
PCT/US2003/002611 WO2003065211A1 (en) | 2002-01-29 | 2003-01-29 | Object- oriented framework for generic adaptive control |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1552019A true CN1552019A (zh) | 2004-12-01 |
CN1552019B CN1552019B (zh) | 2010-05-26 |
Family
ID=27609865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN038009625A Expired - Fee Related CN1552019B (zh) | 2002-01-29 | 2003-01-29 | 面向对象的通用自适应控制框架 |
Country Status (7)
Country | Link |
---|---|
US (2) | US7120621B2 (zh) |
EP (1) | EP1470481A4 (zh) |
JP (1) | JP3940399B2 (zh) |
KR (1) | KR100588032B1 (zh) |
CN (1) | CN1552019B (zh) |
CA (1) | CA2473652A1 (zh) |
WO (1) | WO2003065211A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101984771A (zh) * | 2007-10-26 | 2011-03-09 | 施奈德电气自动控制有限责任公司 | 用于编制面向服务的自动化系统的服务的方法以及编制机 |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030172141A1 (en) * | 2002-03-06 | 2003-09-11 | Adtran, Inc. | Element management system and method utilizing provision templates |
US20040045009A1 (en) * | 2002-08-29 | 2004-03-04 | Bae Systems Information Electronic Systems Integration, Inc. | Observation tool for signal processing components |
US7765521B2 (en) * | 2002-08-29 | 2010-07-27 | Jeffrey F Bryant | Configuration engine |
US20040045007A1 (en) * | 2002-08-30 | 2004-03-04 | Bae Systems Information Electronic Systems Integration, Inc. | Object oriented component and framework architecture for signal processing |
US7734637B2 (en) * | 2002-12-05 | 2010-06-08 | Borland Software Corporation | Method and system for automatic detection of monitoring data sources |
ITTO20030327A1 (it) * | 2003-05-02 | 2004-11-03 | Telecom Italia Spa | Procedimento e piattaforma per la gestione automatizzata |
US7353265B2 (en) * | 2004-06-02 | 2008-04-01 | Lehman Brothers Inc. | Method and system for monitoring and managing assets, applications, and services using aggregated event and performance data thereof |
US7676447B2 (en) * | 2005-02-11 | 2010-03-09 | Kinematik Research Limited | Control system and method for controlling execution of scientific experiments by laboratory instruments |
KR100848978B1 (ko) * | 2006-05-04 | 2008-07-30 | 에스케이 텔레콤주식회사 | 퍼스널 컴퓨터에서의 표준 소프트웨어 플랫폼 프로그램을 기록한 기록매체 |
WO2008135459A2 (de) * | 2007-05-04 | 2008-11-13 | Schneider Electric Automation Gmbh | Kollaboratives automationssystem sowie verfahren zur steuerung eines solchen |
CA2716131A1 (en) * | 2008-02-22 | 2009-08-27 | Materials And Technologies Corporation | Single-sided high throughput wet etching and wet processing apparatus and method |
US8327325B2 (en) * | 2009-01-14 | 2012-12-04 | International Business Machines Corporation | Programmable framework for automatic tuning of software applications |
US8713565B2 (en) | 2010-04-28 | 2014-04-29 | International Business Machines Corporation | Automated tuning in a virtual machine computing environment |
US8621052B2 (en) * | 2010-08-20 | 2013-12-31 | International Business Machines Corporation | Performance tuning for software as a performance level service |
US10089414B2 (en) | 2012-07-31 | 2018-10-02 | Hewlett Packard Enterprise Development Lp | System architecture generation |
CN104883392A (zh) * | 2015-04-25 | 2015-09-02 | 哈尔滨工业大学 | 一种基于构件代理模块的航天器接口适配器及采用该适配器实现的数据交互方法 |
US20170063597A1 (en) * | 2015-08-31 | 2017-03-02 | Ca, Inc. | Api provider insights collection |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5546312A (en) | 1993-09-20 | 1996-08-13 | Texas Instruments Incorporated | Use of spatial models for simultaneous control of various non-uniformity metrics |
FR2750517B1 (fr) * | 1996-06-27 | 1998-08-14 | Bull Sa | Procede de surveillance d'une pluralite de types d'objets d'une pluralite de noeuds a partir d'un noeud d'administration dans un systeme informatique |
US6192354B1 (en) | 1997-03-21 | 2001-02-20 | International Business Machines Corporation | Apparatus and method for optimizing the performance of computer tasks using multiple intelligent agents having varied degrees of domain knowledge |
US6401080B1 (en) | 1997-03-21 | 2002-06-04 | International Business Machines Corporation | Intelligent agent with negotiation capability and method of negotiation therewith |
US6145121A (en) * | 1997-04-17 | 2000-11-07 | University Of Washington | Trace based method for the analysis, benchmarking and tuning of object oriented databases and applications |
US6199068B1 (en) | 1997-09-11 | 2001-03-06 | Abb Power T&D Company Inc. | Mapping interface for a distributed server to translate between dissimilar file formats |
WO2000045266A1 (en) * | 1999-02-01 | 2000-08-03 | Touch Technologies, Inc. | Method and apparatus for automated tuning and configuration collection for logic systems |
US20010032029A1 (en) | 1999-07-01 | 2001-10-18 | Stuart Kauffman | System and method for infrastructure design |
US6487562B1 (en) * | 1999-12-20 | 2002-11-26 | Emc Corporation | Dynamically modifying system parameters in data storage system |
US6718358B1 (en) * | 2000-03-31 | 2004-04-06 | International Business Machines Corporation | System and method for generic automated tuning for performance management |
US20020124007A1 (en) * | 2001-03-02 | 2002-09-05 | Wuhan P&S Electronics Company Ltd. | Network server and database therein |
US6836849B2 (en) * | 2001-04-05 | 2004-12-28 | International Business Machines Corporation | Method and apparatus for controlling power and performance in a multiprocessing system according to customer level operational requirements |
US6662169B2 (en) | 2001-04-12 | 2003-12-09 | Ralph E. Rose | Controlling the self learning behavior of an autonomous agent |
US8326965B2 (en) * | 2001-05-03 | 2012-12-04 | Hewlett-Packard Development Company, L.P. | Method and apparatus to extract the health of a service from a host machine |
US7028225B2 (en) * | 2001-09-25 | 2006-04-11 | Path Communications, Inc. | Application manager for monitoring and recovery of software based application processes |
US6965886B2 (en) * | 2001-11-01 | 2005-11-15 | Actimize Ltd. | System and method for analyzing and utilizing data, by executing complex analytical models in real time |
US9184929B2 (en) * | 2001-11-26 | 2015-11-10 | Arris Enterprises, Inc. | Network performance monitoring |
-
2002
- 2002-01-29 US US10/059,665 patent/US7120621B2/en not_active Expired - Fee Related
-
2003
- 2003-01-29 EP EP03704060A patent/EP1470481A4/en not_active Withdrawn
- 2003-01-29 KR KR1020047001581A patent/KR100588032B1/ko not_active IP Right Cessation
- 2003-01-29 WO PCT/US2003/002611 patent/WO2003065211A1/en active Application Filing
- 2003-01-29 JP JP2003564735A patent/JP3940399B2/ja not_active Expired - Fee Related
- 2003-01-29 CN CN038009625A patent/CN1552019B/zh not_active Expired - Fee Related
- 2003-01-29 CA CA002473652A patent/CA2473652A1/en not_active Abandoned
-
2006
- 2006-09-21 US US11/524,622 patent/US20070016551A1/en not_active Abandoned
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101984771A (zh) * | 2007-10-26 | 2011-03-09 | 施奈德电气自动控制有限责任公司 | 用于编制面向服务的自动化系统的服务的方法以及编制机 |
Also Published As
Publication number | Publication date |
---|---|
WO2003065211A1 (en) | 2003-08-07 |
KR100588032B1 (ko) | 2006-06-12 |
EP1470481A1 (en) | 2004-10-27 |
CA2473652A1 (en) | 2003-08-07 |
EP1470481A4 (en) | 2008-02-20 |
JP3940399B2 (ja) | 2007-07-04 |
CN1552019B (zh) | 2010-05-26 |
KR20040084887A (ko) | 2004-10-06 |
US20030144983A1 (en) | 2003-07-31 |
US7120621B2 (en) | 2006-10-10 |
JP2005516302A (ja) | 2005-06-02 |
US20070016551A1 (en) | 2007-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1552019B (zh) | 面向对象的通用自适应控制框架 | |
US7937493B2 (en) | Connection pool use of runtime load balancing service performance advisories | |
US7873684B2 (en) | Automatic and dynamic provisioning of databases | |
CN100405301C (zh) | 在次最佳网格环境中维持应用工作的方法和系统 | |
US6799314B2 (en) | Work flow management method and work flow management system of controlling a work flow | |
US20060069758A1 (en) | Providing automatic policy enforcement in a multi-computer service application | |
EP1361761A1 (en) | Telecommunications network management system and method for service monitoring | |
CN1527227A (zh) | 用于过程控制系统的分布式数据访问方法和设备 | |
CN1755720A (zh) | 用于缓存或同步项目数据的方法和系统 | |
CN1969280A (zh) | 使用命令行环境的远程系统管理 | |
CN1358379A (zh) | 电信网络资源管理方案和方法 | |
EP1979823A2 (en) | Coordinating and selecting computer protocols for resources acquisition from multiple resource managers | |
KR100538371B1 (ko) | 분산데이터처리환경에 레거시 어플리케이션을 통합시키기위한 방법 및 시스템 | |
US7844967B2 (en) | Method of allocating computing resources | |
CN111818128B (zh) | 基于容器云的组件化仿真模型运行控制系统、方法及介质 | |
US11768828B2 (en) | Project management system data storage | |
US20130339279A1 (en) | Optimal persistence of a business process | |
CN114489761B (zh) | 一种基于容器集群的服务集成和应用集成方法 | |
CN115729924A (zh) | 一种基于插件化异构数据源的数仓海量数据的传输方法 | |
CN116089079A (zh) | 一种基于大数据的计算机资源分配管理系统及方法 | |
CN111782363A (zh) | 一种支持多业务场景调用的方法和流程系统 | |
Dong et al. | Optimization of Service Scheduling in Computing Force Network | |
CN1612618A (zh) | 一种电信网管系统中级联代理实现方法 | |
CN113472590B (zh) | 一种DDS中基于机器学习的QoS配置方法 | |
Bobroff et al. | A distributed job scheduling and flow management system |
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 | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100526 Termination date: 20120129 |