CN1780233A - 用于策略评估的方法和系统 - Google Patents
用于策略评估的方法和系统 Download PDFInfo
- Publication number
- CN1780233A CN1780233A CN200510115146.1A CN200510115146A CN1780233A CN 1780233 A CN1780233 A CN 1780233A CN 200510115146 A CN200510115146 A CN 200510115146A CN 1780233 A CN1780233 A CN 1780233A
- Authority
- CN
- China
- Prior art keywords
- mentioned
- substrategy
- sub
- computer system
- action
- 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
- 238000000034 method Methods 0.000 title claims abstract description 36
- 238000011156 evaluation Methods 0.000 title claims abstract description 20
- 230000009471 action Effects 0.000 claims abstract description 130
- 230000001360 synchronised effect Effects 0.000 claims abstract description 52
- 238000006243 chemical reaction Methods 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 18
- 230000008569 process Effects 0.000 claims description 11
- 238000000354 decomposition reaction Methods 0.000 claims description 6
- 230000015654 memory Effects 0.000 claims description 5
- 238000004891 communication Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 3
- 230000000875 corresponding effect Effects 0.000 description 17
- 230000014509 gene expression Effects 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 9
- 238000013459 approach Methods 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 239000000654 additive Substances 0.000 description 1
- 230000000996 additive effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 230000019771 cognition Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- 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/52—Program synchronisation; Mutual exclusion, e.g. by means of semaphores
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Multi Processors (AREA)
Abstract
本发明提供了一种用于策略评估的方法、系统和装置。计算机系统的策略被转换为多个子策略、至少一个同步步骤以及最终动作。这些子策略被分发给该计算机系统中相应的子组件。评估这些子策略,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略。通过使用该至少一个同步步骤使这些子策略同步。响应于使这些子策略同步,执行上述最终动作。该计算机系统可以是单或分布式计算机系统。
Description
技术领域
本发明一般涉及计算机系统,更具体地,涉及计算机系统上的策略评估。
背景技术
分布式计算机系统是其中许多独立的单个计算机系统通过一个或多个网络进行协作的系统。因为分布式计算机系统具有独立但协作的单个计算机系统,所以分布式计算机系统的管理可能是复杂的。响应这一复杂性,用于分布式计算机系统的管理的某些技术已变得日益普遍。
一种这样的管理技术是策略的使用。策略是使得分布式计算机系统或其一部分执行某一动作的实体,通常是规则。策略通常是以条件与动作(通常称作条件动作对)的形式的,其中策略指定在条件评估为特定状态(例如“真”)时要执行的动作。在基于策略的系统中,对策略的条件部分进行评估(例如根据需要或按照规律),且如果任一策略的条件部分评估为真,则系统执行相关的动作。使用策略来控制分布式计算机系统的动作已变成计算机系统管理中的重要技术。
然而,这种基于策略的分布式计算机系统中的一个问题在于,当条件、动作、或条件或动作的一部分需要相当长的时间来执行时,分布式计算机系统展现出较差的响应性。此外,响应触发策略评估和执行的事件,分布式计算机系统展现出巨大且突然的资源使用尖峰。在大规模分布式计算机系统中,这一问题可能严重到条件评估和相应的动作不能在该条件的下一次触发之前完成。
作为例子,考虑基于策略的文件移动系统,该系统在策略中指定的某一标准满足时,找到了用于将文件从一种类型的盘移动到另一种类型的盘的候选者。如果该文件系统包含数十亿个文件,则它可能会花费许多小时或许多天来扫描整个文件系统,以识别出移动候选者。
因此,所需要的是,提供可扩缩性和可响应性的更加有效的策略评估。
发明内容
根据这些教导的当前优选实施例,克服了上述和其他问题,并实现了其他的优点。具体地,本发明提供了一种用于使用同步的策略的并发评估的技术。这些新技术相对于传统的策略评估技术,可以提供更佳的可扩缩性和提高的响应性。
例如,公开了一种用于策略评估的技术。计算机系统的策略被转换为多个子策略、至少一个同步步骤以及最终动作。这些子策略被分发给该计算机系统中相应的子组件。评估这些子策略,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略。通过使用上述至少一个同步步骤使这些子策略同步。响应于使这些子策略同步,执行上述最终动作。
附图说明
结合附图,在下面本发明的详细描述中,本发明实施例的上述及其他方面变得更加明显,其中:
图1是适于执行本发明示例性实施例的分布式计算机系统的方框图;
图2和图3是图1的分布式计算机系统的编排部分的每一个例子;
图4是用于使用同步的策略的并发评估的示例性方法的流程图;以及
图5是说明用于使用同步的策略的并发评估的示例性流的流图。
具体实施方式
本发明的示例性实施例用于计算机系统上的策略评估。具体地,本发明的实施例可用于分布式计算机系统的管理。如上所述,策略通常是以条件动作对形式的规则。本发明的一个方面在于将策略转换为子策略、一个或多个同步步骤以及最终的动作。子策略由分布式计算机系统的子组件并发评估,然后被同步(例如使用一个或多个同步步骤)并执行最终动作,以便在分布式计算机系统上创建相当于在不进行策略到子策略的转换情况下的策略执行的结果。
由于这些示例性技术提供了在其他子策略的条件被评估之前并发且潜在地评估一个子策略的条件的机会,所以在策略条件的评估中能够获得显著的有效性和最佳的响应性。甚至是该子策略动作也能够在其他子策略的条件及动作执行前得以并发且潜在地执行。
在一个实施例中,当子策略条件被确定为是安全的(例如由一个或多个系统动作所定义的那样,以看得到的方式不影响系统行为)时候,这些子策略动作被并发执行。在另一个示例性实施例中,当子策略动作可以被取消时,这些子策略动作被并发执行。安全动作的一个例子是在日期按照子组件所维护的时钟变化时,构建存在30天以上的文件的列表。构建这样的列表是安全的,因为构建的行为是对外部用户或系统不可见的子组件的内部操作。能够被取消的操作的一个例子是在另一个盘上进行文件的精确复制,该操作可以通过移除该副本而使原始文件保持完整来取消。能够被取消的操作可被认为是安全的。同步步骤和最终动作确保通过将策略分解为子策略的策略评估的总体效果相当于不转换策略的情况下的策略评估。
现在转到图1,其示出了适于执行本发明的示例性实施例的分布式计算机系统100。分布式计算机系统100包括连接(例如通过一个或多个网络)到存储器110的处理器105。存储器110包括策略P 115、转换模式120、策略转换模块125、转换后的策略输出130和编排部分150。转换后的策略输出130包括N个子策略P1 135-1至PN 135-N、同步步骤S 140和最终步骤F 145。本领域的技术人员可用显而易见的方式将该示例性实施例扩展为包括由子同步步骤构成的同步步骤,而每个子同步步骤又可进一步具有子子同步步骤等。类似地,该最终步骤可包括子步骤,每个子步骤可由子子步骤构成等。编排部分150包括N个子组件C1 160-1至CN 160-N。图2和3中示出了编排部分150的两个例子。
尽管本公开涉及分布式计算机系统100,但本发明的实施例适合于其中的子组件能够评估策略的任何计算机系统,诸如单计算机系统。
如下面更详细地描述的,在一个示例性实施例中,策略转换模块125使用转换模式120将策略115转换为子策略135、同步步骤140和最终动作145。在一个示例性实施例中,子策略135、同步步骤140和最终动作145通过策略转换模块125与编排部分150通信。如本领域中已知的,分布式计算机系统100可包括信号承载介质,其有形地包括可由数字处理装置(例如分布式计算机系统100)执行以实现本发明的操作的机器可读指令的程序。
每个子组件160是适于执行动作的分布式计算机系统100中的一部分。应该指出,图1描述了N个子策略135和N个子组件160。通常,也将是这种情况,且其在这里用来简化说明。但是,本发明的一些实施例可具有N个子策略135和M个子组件160,其中N不等于M。例如,一个被选的子组件160可具有分发给该被选子组件160的多个子策略135。
现在转到图4,并适当参照图1,图4示出了用于使用同步的策略的并发评估的方法400。在步骤405,通过转换策略的条件和动作,将策略转换为子策略(例如由策略转换模块125进行)。考虑示例性策略P 115,其中P被指定为:
P:if(x)then A。
将策略P 115转换(步骤405)为子策略135:
P1:if(x1)then A1;以及
P2:if(x2)then A2;
还生成了同步步S140和最终动作F 145(步骤410和415):
S:F
在上述例子中,x、x1和x2是布尔条件,A、A1、A2和F是动作。这里,将布尔条件x1和x2称作“子条件”,将动作A1和A2称作“子动作”。
在一个示例性实施例中,使用可适用的方法在执行子策略时获得并发性,可实现转换。转换策略115的一个示例性方式是将策略115看作诸如C/C++和Java的标准语言中的if-then语句,然后,执行用于程序转换的常规技术中已知的策略转换。执行策略转换的另一种示例性方式是将常规技术应用在可扩展模式语言(XSL)(因而可扩展标记语言,XML)中。本发明的示例性实施例包括使用XML模式(例如转换模式120)来描述转换,并使用Java程序读取转换模式120并应用该转换。然而,本发明并不限于任何模式(或其使用)或任何程序设计语言。转换模式120指定了对每种策略类型的转换。本领域的技术人员可使用具有或不具有显式转换模式120的类似技术。
在一个示例性实施例中,对于P为其实例的类型的策略,转换模式120描述了分解结果,以使条件x相当于子条件x1和x2的逻辑“与”操作,且分布式计算机系统100上的动作A的结果相当于顺序执行(例如,其中A1和A2在F之前执行)的子动作A1、A2和F的结果。因此,同步步骤140包括子条件x1和x2的逻辑“与”操作。
更一般地说,条x可被分解为具有多个子条件x1...xN和根据这些子条件执行的适当的逻辑操作的分解结果,其中该分解结果相当于该条件。同步步骤140执行适当的逻辑操作,以便同步。执行该适当的逻辑操作的一个结果是子动作的选择(例如“A1 and A2”选择A1与A2,而“A1 or A2”选择A1或A2中的一个)。分布式计算机系统100上的动作A的结果相当于顺序执行的被选子动作和最终动作F的结果(例如,其中被选子动作在最终动作F之前执行)。
应当指出,可将步骤405、410和415看作为一单个步骤并作为一单个步骤来执行,该步骤即将策P115转换为子策略135、同步步骤140和最终动作145。
完成策略P 115到子策略135的转换(步骤405)后,将子策略135分发(步骤420)给系统的子组件160,并根据同步需求(例如由同步步骤140至少部分地定义)在子组件160之间建立同步。一般地,策略转换模块125将分发这些子策略135,但也可使用其他方法。例如,每个子组件160可以周期性地请求(例如向分布式计算机系统100中的策略转换模块125或某些其他装置)子策略。存在多种用于编排同步的技术。图2和图3示出了用于编排同步和最终动作145的两个示例性系统。
现在除了图4之外还参照图2,其示出了分布式计算机系统100的编排部分150的例子。编排部分150包括编排器210和子组件160。编排器210包括同步步骤140和最终动作145。每个子组件160包括策略135。子策略135已被分发(例如通过图1的策略转换模块125或通过编排器210)给子组件160中相应的子组件。每个子组件160评估它的相应子策略135,同时其他子组件160评估它们的相应子策略135(步骤425)。例如,子组件135-1评估子策略P1 135-1,而子组件135-2评估子策略P2 135-2。因此,在分布式计算机系统100内存在子策略135的并发评估。子策略135的评估通常包括相应子动作的执行。即使对子条件是否是一个值(例如“真”或“假”)的实际确定还未产生或不会产生,术语“评估”也将包括评估子策略135的能力。
在该例中,编排器210与每个子组件160通信,并编排同步步骤140和最终动作145的执行。例如,编排器210确定一个或多个子组件160何时对相应的子策略135进行了评估、何时能够执行同步步骤140(步骤430),并响应对同步步骤140可以被执行的确定(步骤430=是),执行(步骤430=是)同步步骤140(步骤435)及最终动作145(步骤440)。如果同步步骤140不能被执行(步骤430=否),则在步骤430编排器210等待。
现在除了图4之外还转到图3,其示出了分布式计算机系统100的编排部分150的另一个例子。在图3的示例中,每个子组件160包括相应的子策略135、同步步骤140和最终动作145。在图3中,同步步骤140和最终动作145的执行的编排在每个子组件160中展开。通常,评估它的相应子策略的第一子组件160将执行步骤430、435和440。例如,给定的子组件160通常会评估它的相应子策略135(步骤425),然后确定能否执行同步步骤140(步骤430),并响应对同步步骤可被执行的确定(步骤430=是)执行同步步骤140(步骤435)和最终动作145(步骤440)。为确定同步步骤140是否可被执行(步骤430),子组件160与其他子组件160通信。
现在将提供使用同步的策略的并发评估的几个例子。在这些例子中,可使用图2和3的任一编排部分150(或它们的组合)编排同步步骤140和最终动作145。
首先,给出使用两个子策略135的使用同步的策略的并发评估的例子。对于策略P 115“if(x)then A”,将子策略P1 135-1(“if(x1)then A1”)和P2 135-2(“if(x)then A2”)分别分发给子组件C1 160-1和C2 160-2。为子组件C1 160-1和C2 160-2建立同步步骤S 140。
每个子组件160与输入(其可能为空)通信(例如接收或订阅),该输入允许子组件160评估它们相应的子策略135的子条件。在每个子组件160中,通信与评估并发(例如单独地)发生。
子组件C1 160-1和C2 160-2对子条件x1和x2分别进行评估,其中的评估是一次地、周期地、当某一事件触发时或以这些的某种组合的方式进行的,且当子组件160-1及160-2的子条件满足时,子组件160-1和160-2分别也并发地执行相应的子动作A1和A2。
当需要时或周期地,子组件160使它们对子x1和x2的评估同步。在图2中,一种用于此的技术是与编排器210通信。例如,编排器210可周期地与每个子组件160通信,请求评估的状态。作为另一个例子,每个子组件160可周期地将子条件的评估状态传送给编排器210。作为又一个例子,子组件160可等待到子条件被评估(以及当相应的子动作被执行时),然后传送评估(和执行)的状态。在图3中,给定的子组件160能够查询(例如周期地或一旦子条件被评估和/或子动作被执行)其他子组件关于评估的状态。一旦至少一个子组件160执行相关子操作,便执行同步步骤140。
因此,对于该示例性策略,当子策略P1 160-1的子条件评估为真(例如以及子策略P1 160-1的子动作已被执行)时,且当子策略P2 160-2的子条件评估为真(例如以及子策略P2 160-2的子动作已被执行)时,子策略P1 160-1和P2 160-2的同步发生。同步步骤140是子条件x1和x2的结果的逻辑操作“与”。同步步骤140可示例性地由图2中的编排器210或由图3中的子组件160中的一个(例如首先对它的相应子条件评估为真的子组件160)来执行。应该指出,当同步步骤140是条件x1和x2的逻辑操作“或”时,当确定(例如由编排器210或子组件160中的一个)条件x1或x2中的一个评估为特定值(通常为真)且仅有一个条件需要被评估为满足同步步骤140时,同步步骤140发生。同样应该指出的是,在图3中,可使用适当的相干技术来防止最终动作145的多次执行。
一旦同步步骤140完成,便执行(例如由图2中的编排器210或由图3中的子组件160中的一个)最终动作145,这在一个示例性实施例中,可对子动作的结果进行组合或合并,然后执行其他的动作。
作为进一步解释的方式,考虑下面更加特定的策略P115的例子:
If(fileAge>30days)and(time=03:00hrs)migrate files from Pool1to Pool2.
策略P 115规定每天早上3点将存在30天的文件从存储池Pool1迁移到存储池Pool2。将该例子与早先使用的更一般的例子联系起来,x1是“(fileage>30days)”,x2是“(time=03:00hrs)”,A1是“add file to a specificlist”,A2是在零时间内完成的空动作,同步步骤140包括对[x1,A1]和[x2,A2]子策略的逻辑“与”操作,同步之后的最终动作145是获得在A1中构建的特定列表并将该列表上的文件从Pool1迁移到Pool2。该例子中的执行模型是接收子策略[x1,A1]的子组件在日期一改变便开始评估该策略(因为该条件涉及基于天数的存在时间确定),并将所选文件添加到供该子策略和该子策略被评估的当天使用的特定列表中。还作为该例子中的执行模型的一部分的是,当原始策略被激活时,从原始策略生成子策略并将其分发给子组件。
下列段落教导了用于将策略的条件部分转换为子条件的示例性技术。众所周知的定理是,任何布尔表达式可被转换为以合取范式的等价表达式。存在配对定理,即任何布尔表达式可被转换为以析取范式的等价表达式。如果对于对构成变量的所有可能赋值,两个布尔表达式都被评估为相同的真值,则可以表明它们是等价的。这些定理是布尔代数的基本定律的直接结果和应用,这些基本定律是:
a)~(E1 and E2)<==>~E1 or~E2;
b)~(E1 or E2)<==>~E1 and~E2;
c)E1 and(E2 or E3)<==>(E1 and E2)or(E1 and E3);以及
d)E1 or(E2 and E3)<==>(E1 or E2)and(E1 or E3),
其中(a)和(b)使用了德摩根定律,而(c)使用了代数分配定律。此外,操作符“or”和“and”是结合的且可交换的。使用这些基本规则,本领域的技术人员能够找到对于给定的任意布尔表达式的等价合取或析取表达式。
如早前提到的,在由策略管理的系统领域中,每个单独的策略一般是以下形式的规则:
P:if(x)then A。
条件部分x一般是能够写成其逻辑合取范式的布尔表达式,因此该策略可重写为:
P:if(x1 and x2)then A.
动作A可被分解为一序列的子动作,且如果动作A以这样一种方式被分解,即其等价于其后为子动作F的子动作A1和A2,那么A1和A2将是子策略的子动作而F将是同步步骤之后的最终子动作。确定A1、A2和F的实际过程可包括人为管理和可使用图形用户接口(GUI)或脚本来指定。因此,作为前述讨论的结果,该子策略可写作:
P1:if(x1)then A1;
P2:if(x2)then A2;以及
Final sub-action F after synchronization.
对于本领域的技术人员来说,怎样将策略分解扩展到具有两个以上的表达式、因而具有两个以上的子策略的策略是显而易见的。子策略(例如子条件和子动作)可被并发地评估。
对于很多领域,可以使用以上示出的机械的、代数的处理来重写这些策略,以满足单独的评估情形。一般地,这需要管理员或智能软件系统来确知布尔表达式的哪一项以及策略的哪一个子动作可被单独评估,并使用该认知来引导这些处理。但在许多实际应用中,这是很直观的—策略通常说明当存在事件、系统资源的物理属性、一日及一年中的时间等的汇交时做些什么。基于实际的目的,在许多系统中,每一类资源的状态不会经常改变并且能够独立于其他类的资源、独立于一日及一年中的时间被监控、度量及测试。
现在参照图5,其示出了用于使用同步的策略的并发评估的流500的流图。流500是使用同步的策略的并发评估的第二个例子。在流500中,“if(x)then A”形式的策略P 515以简写表示为P[x,A]。模块525使用转换模式520执行转换,以创建子策P1 535-1和P2 525-2。子策略P1 535-1是“if(x1)then A1”的形式且其被简写为P1[x1,A1](其中x1是子条件而A1是子动作),子策略P2 525-2是“if(x2)then A2”的形式且其被简写为P2[x2,A2](其中x2是子条件而A2是子动作)。子策略P1 535-1和P2 525-2被分别分发给子组件C1 540-1和C2 540-2。每个子组件540与同步点560进行通信550。通信550通常是子条件已被评估(例如为真或假)。当子条件为真时,通信550也可包括相应子动作的状态(例如完成或未完成)。同步点560执行同步步骤565,而最终动作模块570执行最终动作575。
如前面关于图2和3描述的,同步点560和最终动作模块570可由与子组件540分离的装置来执行,或可由一个或多个子组件570来执行。
流500还说明尽管所有子组件540并发评估,但还存在使评估同步之处(例如同步点560和同步步骤565)。同步允许最终动作575被执行。
作为使用同步的策略的并发评估的第三个例子,考虑包括许多可替换部件和自主服务管理器的复杂的分布式计算机系统。将周期地或持续地监控每个可替换部件的性能和正确的运转。存在可替换部件的存货,其中的一些是性能升级,而其中的一些是一个对一个的替换。有工作人员可被派遣来替换部件。在该分布式计算机系统中存在下列策略:
(i)关于何时应该进行升级替换的策略,例如仅在第三移动操作期间或在假期但仅当系统以50%或更低的容量运行且部件必须有现货时以及仅在有上班的空闲工作人员时;
(ii)关于何时替换故障组件的策略,例如部件必须有现货且必须有上班的空闲工作人员;以及
(iii)关于何时定购替换部件的策略,例如存货较少且有预算中的款项。
对于情况(i),策略的形式可以是:
if(x1:part P of type tis performing sub-par in sub-systems)and (x2:system utilization is less than 50%)and(x3:inventory(t)>0)and (x4:idleworkers>0)then assign an idle worker to pick up a part of typet and use it toreplace part p in subsystem s.
在该示例性策略中,“subsystem”是分布式计算机系统的一部分。为了应用本发明的实施例,构造自主服务管理器,其包括监控子条x1、x2、x3和x4的子组件C1、C2、C3和C4(例如图5的子组件540)。同步点(例如图5中的同步点560)接收来自子组件C1至C4的消息,并确定何时满足对于任何特定部件、子系统和工作人员的所有条件。在该例中,同步步骤(例如图5的同步步骤565)包括满足对于任何特定部分、子系统和工人的所有条件的确定。当同步点做出这种确定时,同步点调用最终动作模块(例如图5的最终动作模块570)来执行最终动作F(例如最终动作575),其在该例中将发布部件替换的命令。上述的情况(ii)和(iii)在结构上类似,虽然更稍微简单了。
本领域的技术人员能够将本方法和装置扩展为包括周期地而不是一次发生的条件的同步、以及多组同步点(例如每一同步点都包括同步步骤)和子策略。
以上描述以示例而并非限定性例子的方式提供了发明人当前预期的用于实现本发明的最佳方法和装置的完整而信息性的描述。然而,对于本领域的技术人员来说,当结合附图和所附权利要求考虑上述描述时,各种修改和调整都是显而易见的。但是,本发明的该教导的所有这样和类似的修改仍将落入本发明的范围内。
此外,在不使用本发明优选实施例的其他相应特征的情况下,可使用其中一些特征来产生良好效果。同样地,上述描述应被认为仅是本发明原理的说明,而并非对其的限定。
Claims (35)
1.一种用于策略评估的方法,包括:
将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作;
将这些子策略分发给该计算机系统中相应的子组件;
评估这些子策略,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略;
通过使用上述至少一个同步步骤使这些子策略同步;以及
响应于使这些子策略同步,执行上述最终动作。
2.权利要求1的方法,其中:
转换进一步包括将单或分布式计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作;以及
分发进一步包括将上述子策略分发给该单或分布式计算机系统中相应的子组件。
3.权利要求1的方法,其中转换进一步包括将上述计算机系统的至少一部分的策略转换为多个子策略、至少一个同步步骤以及最终动作。
4.权利要求1的方法,其中上述策略包括条件和动作,其中转换进一步包括转换该策略以便上述每一子策略包括子条件和子动作。
5.权利要求4的方法,其中上述动作在上述计算机系统上的一个或多个结果相当于上述一组子动作及最终动作在该计算机系统上的一个或多个结果。
6.权利要求4的方法,其中:
转换进一步包括将上述条件分解为包括上述子条件和对这些子条件的适当逻辑操作的分解结果;以及
使上述子策略同步进一步包括通过执行这些子条件的适当逻辑操作,而选择一组子动作,这些适当逻辑操作由上述同步步骤定义。
7.权利要求6的方法,其中使上述子策略同步进一步包括在执行上述最终动作之前执行上述一组动作中的每一子动作。
8.权利要求7的方法,其中使上述子策略同步进一步包括在使这些子策略同步之前执行上述一组动作中的每一子动作。
9.权利要求4的方法,其中评估子策略进一步包括:
确定给定子策略的子条件评估为至少两个值的预定值;以及
对于与上述评估为预定值的子条件对应的子动作,执行以下步骤:
确定给定子动作是否是安全的;以及
响应于该给定子动作被确定为是安全的,执行该给定子动作。
10.权利要求4的方法,其中评估子策略进一步包括:
确定给定子策略的子条件评估为至少两个值的预定值;以及
对于与上述评估为预定值的子条件对应的子动作,执行以下步骤:
确定给定子动作是否可被取消;以及
响应于该给定子动作被确定为该子动作可被取消,执行该给定子动作。
11.权利要求1的方法,其中评估上述子策略进一步包括给定子组件以一次、周期地、当某一事件触发时或一次、周期地和当某一事件触发时的某一组合的形式,对相应子策略进行评估。
12.权利要求1的方法,其中给定子组件与允许该给定子组件评估相应子策略的输入通信。
13.权利要求1的方法,其中使上述子策略同步以及执行上述最终动作由一个或多个编排器以及上述子组件中给定的一个或多个来执行。
14.权利要求1的方法,其中使上述子策略同步以及执行上述最终动作由编排器来执行,该编排器能够与上述评估所分发的子策略的每一子组件通信。
15.权利要求14的方法,其中上述最终动作包括一个或多个子动作,其中执行上述最终动作进一步包括上述编排器指导该计算机系统中上述子组件中的一个或多个执行该一个或多个子动作。
16.权利要求1的方法,其中使上述子策略同步以及执行上述最终动作由上述子组件中给定的一个或多个执行,其中该给定的一个或多个子组件能够与上述评估所分发的子策略的每一子组件通信。
17.权利要求16的方法,其中上述最终动作包括一个或多个子动作,其中执行上述最终动作进一步包括上述给定的一个或多个子组件指导该计算机系统中上述子组件中的一个或多个执行该一个或多个子动作。
18.权利要求1的方法,其中使上述子策略同步进一步包括通过在相应的至少一个同步点使用上述至少一个同步步骤而使这些子策略同步。
19.权利要求1的方法,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、多个同步步骤以及最终动作,该多个同步步骤中的每一个对应于一组子策略;
使上述子策略同步进一步包括通过对该每一组子策略使用相应的同步步骤而使所有组的子策略同步;以及
执行上述最终动作进一步包括响应于使所有组的子策略同步,执行上述最终动作。
20.权利要求1的方法,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作,其中该至少一个同步步骤中给定的一个包括多个子步骤;以及
同步进一步包括通过使用该给定同步步骤的多个子步骤,使上述子策略的至少一部分同步。
21.权利要求1的方法,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作,其中该最终动作包括多个子步骤;以及
执行上述最终动作进一步包括响应于使上述子策略同步,执行该最终动作的这些子步骤。
22.一种用于策略评估的计算机系统,包括:
包括多个子组件的一个或多个存储器;以及
与该一个或多个存储器连接的一个或多个处理器,这些处理器中的至少一个被配置为执行步骤:
将该计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作;
将这些子策略分发给上述多个子组件中相应的子组件;
评估这些子策略,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略;
通过使用上述至少一个同步步骤使这些子策略同步;以及
响应于使这些子策略同步,执行上述最终动作。
23.权利要求22的计算机系统,其中该计算机系统是单或分布式计算机系统。
24.权利要求22的计算机系统,其中转换进一步包括将该计算机系统的至少一部分的策略转换为多个子策略、至少一个同步步骤以及最终动作。
25.权利要求22的计算机系统,其中上述策略包括条件和动作,其中转换进一步包括转换该策略以便上述每一子策略包括子条件和子动作。
26.权利要求25的计算机系统,其中上述动作在该计算机系统上的一个或多个结果相当于上述一组子动作及最终动作在该计算机系统上的一个或多个结果。
27.权利要求25的计算机系统,其中:
转换进一步包括将上述条件分解为包括上述子条件和对这些子条件的适当逻辑操作的分解结果;以及
使上述子策略同步进一步包括通过执行这些子条件的适当逻辑操作,而选择一组子动作,这些适当逻辑操作由上述同步步骤定义。
28.权利要求25的计算机系统,其中:
上述一个或多个存储器进一步包括编排器;以及
使上述子策略同步以及执行上述最终动作由编排器执行,该编排器能够与上述评估所分发的子策略的每一子组件通信。
29.权利要求22的计算机系统,其中使上述子策略同步以及执行上述最终动作由上述子组件中给定的一个或多个执行,其中该给定的一个或多个子组件能够与上述评估所分发的子策略的每一子组件通信。
30.权利要求22的计算机系统,其中使上述子策略同步进一步包括通过在相应的至少一个同步点使用上述至少一个同步步骤而使这些子策略同步。
31.权利要求22的计算机系统,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、多个同步步骤以及最终动作,该多个同步步骤中的每一个对应于一组子策略;
使上述子策略同步进一步包括通过对该每一组子策略使用相应的同步步骤而使所有组的子策略同步;以及
执行上述最终动作进一步包括响应于使所有组的子策略同步,执行上述最终动作。
32.权利要求22的计算机系统,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作,其中该至少一个同步步骤中给定的一个包括多个子步骤;以及
同步进一步包括通过使用该给定同步步骤的多个子步骤,使上述子策略的至少一部分同步。
33.权利要求22的计算机系统,其中:
转换进一步包括将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作,其中该最终动作包括多个子步骤;以及
执行上述最终动作进一步包括响应于使上述子策略同步,执行该最终动作的这些子步骤。
34.一种信号承载介质,其有形地包括可由数字处理装置执行以实现评估策略的操作的机器可读指令的程序,该操作包括:
将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作;
将这些子策略分发给该计算机系统中相应的子组件;
评估这些子策略,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略;
通过使用上述至少一个同步步骤使这些子策略同步;以及
响应于使这些子策略同步,执行上述最终动作。
35.一种用于策略评估的装置,包括:
用于将计算机系统的策略转换为多个子策略、至少一个同步步骤以及最终动作的装置;
用于将这些子策略分发给该计算机系统中相应的子组件的装置;
用于评估这些子策略的装置,其中每一子组件评估它相应的一个或多个子策略,而其他子组件评估它们相应的一个或多个子策略;
用于通过使用上述至少一个同步步骤使这些子策略同步的装置;以及
用于响应于使这些子策略同步,执行上述最终动作的装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/995,598 | 2004-11-22 | ||
US10/995,598 US7783728B2 (en) | 2004-11-22 | 2004-11-22 | Concurrent evaluation of policies with synchronization |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1780233A true CN1780233A (zh) | 2006-05-31 |
CN1780233B CN1780233B (zh) | 2010-10-13 |
Family
ID=36462333
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200510115146.1A Active CN1780233B (zh) | 2004-11-22 | 2005-11-10 | 用于策略评估的方法和系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US7783728B2 (zh) |
CN (1) | CN1780233B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112036774A (zh) * | 2020-10-09 | 2020-12-04 | 北京嘀嘀无限科技发展有限公司 | 服务策略的评估方法、装置、设备及存储介质 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6408336B1 (en) * | 1997-03-10 | 2002-06-18 | David S. Schneider | Distributed administration of access to information |
US7272625B1 (en) * | 1997-03-10 | 2007-09-18 | Sonicwall, Inc. | Generalized policy server |
US6463470B1 (en) * | 1998-10-26 | 2002-10-08 | Cisco Technology, Inc. | Method and apparatus of storing policies for policy-based management of quality of service treatments of network data traffic flows |
US6301613B1 (en) * | 1998-12-03 | 2001-10-09 | Cisco Technology, Inc. | Verifying that a network management policy used by a computer system can be satisfied and is feasible for use |
US6473851B1 (en) * | 1999-03-11 | 2002-10-29 | Mark E Plutowski | System for combining plurality of input control policies to provide a compositional output control policy |
US6430576B1 (en) * | 1999-05-10 | 2002-08-06 | Patrick Gates | Distributing and synchronizing objects |
US7386475B2 (en) * | 2000-10-05 | 2008-06-10 | I2 Technologies Us, Inc. | Generation and execution of custom requests for quote |
US8776230B1 (en) * | 2001-10-02 | 2014-07-08 | Mcafee, Inc. | Master security policy server |
US20030069949A1 (en) * | 2001-10-04 | 2003-04-10 | Chan Michele W. | Managing distributed network infrastructure services |
US7024214B2 (en) * | 2002-02-26 | 2006-04-04 | Microsoft Corporation | Synchronizing over a number of synchronization mechanisms using flexible rules |
US7130882B1 (en) * | 2002-06-20 | 2006-10-31 | Microsoft Corporation | Caching mechanism using intervening network caching policies |
US7665125B2 (en) * | 2002-09-23 | 2010-02-16 | Heard Robert W | System and method for distribution of security policies for mobile devices |
US7219142B1 (en) * | 2002-10-21 | 2007-05-15 | Ipolicy Networks, Inc. | Scoping of policies in a hierarchical customer service management system |
AU2004207949B8 (en) * | 2003-01-24 | 2010-05-13 | Unium Inc. | Method for secure communication and resource sharing |
US20040250258A1 (en) * | 2003-06-04 | 2004-12-09 | Raghuvir Yuvaraj Athur | System and method for rule based object navigation |
KR100491541B1 (ko) * | 2003-08-01 | 2005-05-25 | 니트젠테크놀러지스 주식회사 | 네트웍 환경에서의 컨텐츠 동기화 시스템 및 동기화 방법 |
US20050047412A1 (en) * | 2003-08-25 | 2005-03-03 | Susan Hares | Establishment and enforcement of policies in packet-switched networks |
US20050071222A1 (en) * | 2003-09-30 | 2005-03-31 | Bigus Joseph P. | Method for computing price discounts in an e-commerce environment |
US20050198283A1 (en) * | 2004-01-07 | 2005-09-08 | Sundaresan Ramamoorthy | Managing a network using generic policy definitions |
US20060009991A1 (en) * | 2004-05-25 | 2006-01-12 | Jun-Jang Jeng | Method and apparatus for using meta-rules to support dynamic rule-based business systems |
-
2004
- 2004-11-22 US US10/995,598 patent/US7783728B2/en active Active
-
2005
- 2005-11-10 CN CN200510115146.1A patent/CN1780233B/zh active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112036774A (zh) * | 2020-10-09 | 2020-12-04 | 北京嘀嘀无限科技发展有限公司 | 服务策略的评估方法、装置、设备及存储介质 |
CN112036774B (zh) * | 2020-10-09 | 2024-05-17 | 北京嘀嘀无限科技发展有限公司 | 服务策略的评估方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
US7783728B2 (en) | 2010-08-24 |
CN1780233B (zh) | 2010-10-13 |
US20060112389A1 (en) | 2006-05-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Casati et al. | Deriving active rules for workflow enactment | |
CN1313923C (zh) | 软件分发方法与系统 | |
CN1447224A (zh) | 计算机应用程序中优化存储器使用的方法 | |
CN101299194B (zh) | 基于可配置处理器的异构多核系统线程级动态调度方法 | |
CN1636211A (zh) | 用于工业自动化系统的工程方法和工程系统 | |
CN102521024B (zh) | 基于生物信息云平台的作业调度方法 | |
CN1755620A (zh) | 工作流进度表创作工具 | |
CN1867891A (zh) | 用于实时多线程处理的方法和装置 | |
CN101046756A (zh) | 用于解决计算资源死锁的设备、系统以及方法 | |
CN106656525A (zh) | 一种数据广播系统、数据广播方法及设备 | |
CN105138405A (zh) | 基于待释放资源列表的MapReduce任务推测执行方法和装置 | |
CN108664314A (zh) | 大数据处理流程模块化管理方法及装置 | |
Tsuji et al. | Multiple-spmd programming environment based on pgas and workflow toward post-petascale computing | |
CN1315045C (zh) | 一种对机群实现集中并发管理的方法 | |
WO2005008414A2 (en) | Method and apparatus for parallel action processing | |
CN103024791A (zh) | 一种通信测试系统中多业务处理模型及处理方法 | |
CN114816694A (zh) | 一种多流程协作的rpa任务调度方法及装置 | |
CN1306407C (zh) | 为动态提供而自主地自学习资源选择的方法和系统 | |
CN109104304A (zh) | 一种分布式实时故障处理方法 | |
CN1780233A (zh) | 用于策略评估的方法和系统 | |
CN115964176B (zh) | 云计算集群调度方法、电子设备和存储介质 | |
CN1567906A (zh) | 一种用状态机对异步操作进行控制的方法 | |
CN105630580A (zh) | 基于调度平台的数据汇总方法及数据汇总装置 | |
CN1794285A (zh) | 并行批量处理方法 | |
Singh | Task Scheduling Techniques Based On Parallel Genetic Algorithm Approaches: A Review |
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 | ||
ASS | Succession or assignment of patent right |
Owner name: CITRIX SYSTEM INTERNATIONAL CO., LTD. Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION Effective date: 20130926 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20130926 Address after: Schaffhausen Patentee after: West Link Systems International Ltd Address before: American New York Patentee before: International Business Machines Corp. |