CN101689167B - 在分布式系统中逐步实现声明性模型 - Google Patents
在分布式系统中逐步实现声明性模型 Download PDFInfo
- Publication number
- CN101689167B CN101689167B CN2008800222423A CN200880022242A CN101689167B CN 101689167 B CN101689167 B CN 101689167B CN 2008800222423 A CN2008800222423 A CN 2008800222423A CN 200880022242 A CN200880022242 A CN 200880022242A CN 101689167 B CN101689167 B CN 101689167B
- Authority
- CN
- China
- Prior art keywords
- declarative models
- application program
- distributed application
- declarative
- models
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/10—Requirements analysis; Specification techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/35—Creation or generation of source code model driven
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/64—Retargetable
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
一种用于自动实现分布式应用程序中的高级指令的系统包括至少工具组件,其中该高级指令反映了分布式应用程序的行为。工具组件被用于编写声明性模型形式的高级指令,并且将其放入储存库中。执行性组件随后从储存库接收声明性模型并精炼它们(例如,经由逐步详细)直至不存在不清楚。因平台而异的驱动器随后翻译来自执行性组件的命令,有效地将声明性模型指令转换成将在一个或更多个应用容器中实现的一组命令性动作。因平台而异的驱动器还将一个或更多个事件流中继至分析装置,该分析装置可导致对声明性模型的修改,并且相应的新的指令集在以后的时间点通过因平台而异的驱动器而来。
Description
背景
背景和相关技术
随着计算机化的系统日益普及,此类系统内采用的软件和硬件的复杂度也日益增加。一般而言,对表面上愈加复杂的软件的需要持续增长,这进一步趋向于成为推动硬件更大进步的动力之一。例如,如果应用程序对给定硬件系统要求太高,则该硬件系统可能效率低下地操作,或者完全无法处理该应用程序。然而,应用程序开发的目前趋势通过至少部分地使用分布式应用程序已移除了许多这些类型的硬件约束。一般而言,分布式应用程序包括在若干不同的硬件组件上——往往是在层叠环境中的不同计算机系统上执行的组件。
在分布式应用程序下,不同的计算机系统可在网络上向彼此通传各种处理结果。由此,组织将采用分布式应用服务器来管理众多不同的计算机系统上的若干不同的分布式应用程序。例如,用户可采用一个分布式应用服务器来管理在一组不同的计算机系统上执行的电子商务应用程序的操作。用户也可使用分布式应用服务器来管理在相同的或甚至是不同的一组计算机系统上的客户管理应用程序的执行。
当然,通过分布式应用服务器管理的每个相应的分布式应用又可具有在其他不同的计算机系统上执行的若干不同的模块和组件。因此,可以领会,虽然通过若干不同的计算机系统来组合处理功率的此能力可能是有利的,但对于这样的广泛分布的应用程序模块,存在其他缺点。例如,组织通常期望分布式应用服务器最优地在可用资源上运行分布式应用,并考虑变化的需求模式和资源可用性。
遗憾的是,常规的分布式应用服务器通常被有缺陷地装备(或完全没有被装备)成自动处理和管理对于分布式应用程序的每个给定模块可能发生的所有不同问题。例如,用户可具有每当有促销时或在每年相同的节日期间就例行公事地获得大量订单的在线商店应用程序。在一些情形中,用户可能期望分布式应用服务器分析并预测对给定的分布式应用程序的各个组件或模块的这些波动需求。
具体而言,组织可能期望分布式应用服务器交换各种资源,从而高需求进程能由可能较不忙碌的其他系统上的软件或硬件组件来处理。然而,此类适应性如果不能用常规的分布式应用服务器平台来执行则可能是困难的。具体地,大多数常规的分布式应用服务器平台被有缺陷地装备成或不能标识并恰当地管理分布式应用程序的各组件之间的不同需求模式。这可能至少部分是由于管理可具有许多分布式组件和子系统和/或其他的传统或外部系统的应用程序的复杂性,这些分布式组件和子系统中有许多是长期运行的工作流。
此外,常规的分布式应用程序服务器一般未被配置成用于高效缩放性。例如,大多数分布式应用服务器被配置成管理给定的分布式应用程序的精确指令,诸如精确引用和/或组件寻址方案。即,应用程序的各组件之间往往只有很少或没有“宽松耦合”。由此,当服务器的管理员希望将某些模块或组件重新部署到另一个服务器上或另一组计算机系统上时,存在加重的出错潜在可能性,在可能涉及大量不同计算机系统和/或模块的场合尤其如此。在某些新模块或组件引用未向前传递至需要它们的每一处时、或如果它们被不正确地向前传递时,就可能出现这种出错潜在可能性。
会进一步加重这种出错潜在可能性的分布式应用程序的一方面是分布式应用服务器可能正管理若于不同的分布式应用程序的概念,其中每一个分布式应用程序在不同的平台上执行。即,在相应的分布式应用程序能够接受并实现改变之前,分布式应用服务器可能需要为每个不同的平台翻译不同的指令。由于这些和其他复杂性,分布式应用程序趋向于对需求高峰相当敏感。
这种对需求高峰的敏感性可能意味着各种分布式应用程序模块在能检测到出错之前会继续在次优水平上操作一长时段。在某些情形中,分布式应用服务器的管理员可能甚至未采取校正行动,因为尝试这样做可能会导致甚至更大数量的出错。结果,分布式应用程序模块可潜在地变得在低效率操作模式中卡住,诸如持续重启自身,而无法在分布式应用程序的寿命期间得到校正。相应地,现有分布式应用程序和分布式应用程序服务器的管理存在许多要解决的难题。
简要概述
本发明的各个实现提供了被配置成通过分布式应用程序服务器来自动实现分布式应用程序的操作的系统、方法和计算机程序产品。在至少一种实现中,例如,分布式应用程序服务器包括实现装置集合和分析装置集合。通过分布式应用程序的每个给定模块的因平台而异的驱动器,实现装置部署高级指令集或声明性模型来在相应平台上创建给定的分布式应用程序模块,而分析装置按需自动监视并调整声明性模型。通过服务器组件的声明性模型至分布式应用程序的这种松散耦合以及自动监视和调整可允许服务器能更好地管理需求、资源、或使用高峰、和/或其他形式的分布式应用程序行为波动。
相应地,一种在执行期间使用声明性模型来自动实现分布式应用程序中一个或更多个高级指令集的方法可涉及标识对储存库中的一个或更多个相应声明性模型的一个或更多个修改。该一个或更多个声明性模型包括关于分布式应用程序的一个或更多个操作的高级指令。该方法还可涉及精炼该一个或更多个声明性模型以包括关于该分布式应用程序的操作的上下文信息。此外,该方法可涉及将一个或更多个经精炼的声明性模型翻译成将由分布式应用程序的容器实现的一个或更多个命令。此外,该方法可涉及将经翻译的命令发送给一个或更多个应用容器。经翻译的命令随后被该容器接收并被用于确定和配置该容器中的分布式应用程序的行为。
此外,一种在执行期间使用声明性模型来自动实现分布式应用程序中一个或更多个高级指令集的附加或替换方法可涉及从储存库接收一组新的一个或更多个声明性模型。该新的一个或更多个声明性模型包括关于分布式应用程序的操作的高级指令。该方法还可涉及通过实现装置和一个或更多个应用容器来实现该新的一个或更多个声明性模型。结果,第一低级命令集被准备好并被发送给该一个或更多个应用容器以供执行。
此外,该方法可涉及经由一个或更多个分析装置来标识新的一个或更多个声明性模型中的改变。改变反映了从一个或更多个应用容器接收到的分布式应用程序的性能信息。此外,该方法可涉及通过实现装置和一个或更多个应用容器来实现一个或更多个声明性模型的经更新版本。这样,第二低级命令集被准备好并被发送给该一个或更多个应用容器以供基于对该一个或更多个声明性模型的改变来执行。
提供本概述以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本概述不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。
本发明的附加特征和优点将在以下描述中叙述,且其部分根据本描述将是显而易见的,或可通过对本发明的实践领会。本发明的特征和优点可通过在所附权利要求书中特别指出的工具和组合来实现和获得。本发明的这些和其他特征将通过以下描述和所附权利要求书变得更加完全明显,或可通过对下文中所述的本发明的实践来领会。
附图简述
为了描述可获得本发明的上述和其它优点和特征的方法,将通过引用附图中示出的本发明的具体实施例来呈现以上简要描述的本发明的更具体描述。可以理解,这些附图仅描述本发明的典型实施例,从而不被认为是对其范围的限制,本发明将通过使用附图用附加特征和细节来描述和说明,在附图中:
图1A图解了根据本发明的实现的被配置成使用一个或更多个声明性模型自动实现分布式应用程序操作的系统的概览示意图;
图1B图解了图1A中所示的执行性组件和因平台而异的驱动器的更详细示意图;
图2图解根据本发明的实现的在执行期间使用声明性模型来实现分布式应用程序中的一个或更多个高级指令集的方法中的一系列动作的流程图;
图3图解根据本发明的实现的在执行期间使用声明性模型来实现分布式应用程序中的一个或更多个高级指令集的附加或替换方法的附加流程图。
详细描述
本发明的各个实现延伸至被配置成通过分布式应用程序服务器来自动实现分布式应用程序的操作的系统、方法和计算机程序产品。在至少一种实现中,例如,分布式应用程序服务器包括实现装置集合和分析装置集合。通过分布式应用程序的每个给定模块的因平台而异的驱动器,实现装置部署高级指令集或声明性模型来在相应平台上创建给定的分布式应用程序模块,而分析装置按需自动监视并调整声明性模型。通过服务器组件的声明性模型至分布式应用程序的这种宽松耦合以及自动监视和调整可允许服务器能更好地管理需求、资源、或使用高峰、和/或其他形式的分布式应用程序行为波动。
相应地,从以下说明书和权利要求书将领会,本发明的实现可提供管理分布式应用程序的数个不同优点。这至少部分是由于实现诸如由程序开发者创建的那些高级指令就像实现低级指令(例如,可执行命令)那样容易,低级指令可由在因平台而异的基础上配置并管理分布式应用模块的分布式应用容器来执行。例如,本发明的实现提供了用于编写声明性模型、检测声明性模型的改变、以及调度恰适的模型精炼进程以使得经精炼的声明性模型指令能被翻译的机制。
进一步实现提供了用于将经精炼的模型翻译成能最终执行的指令/命令的机制。相应地,应领会,这些和其他特征可显著简化并规格化管理潜在可能位于若干不同平台上的一个或多个不同的分布式应用程序的分布式应用程序服务器的管理。具体而言,服务器管理员可容易地配置宽范围的分布式应用操作,而不一定需要了解给定运行时环境的所有配置细节、和/或给定的分布式应用程序的具体实现平台。
现在参考附图,图1A图解了本发明的至少一种实现的概览示意图,其中分布式计算机化环境/系统100中的分布式应用服务器被用于在正进行、自动基础上实现一个或更多个分布式应用程序107中的高级指令。具体而言,图1A示出了包括实现装置105和分析装置110的系统分布式系统100。一般而言,实现装置105和分析装置110包括可在一个或更多个分布式应用程序服务器内使用的一个或更多个一般化计算机可执行组件集合。这些一般化计算机可执行组件又被配置成管理一个或更多个应用容器135中的一个或更多个不同的分布式应用程序107。
例如,图1A示出在至少一种实现中,实现装置105可包括工具组件125。一般而言,工具组件125包括可由程序开发者或服务器管理员用来创建一个或更多个声明性模型153的一个或更多个计算机可执行程序集合。例如,用户(例如,分布式应用程序开发者)可使用一个或更多个开发者工具(例如,125)来创建声明性模型153。作为初步事项,应领会,本文中对任何因平台(或另外的操作系统)而异的组件或模块/程序的任何引用仅仅是为便于解释的方式作出的。具体地,本文中对任何因组件、模块或应用而异的特征的任何引用将被理解为能够被应用于宽范围的操作环境、系统和/或平台。
在任何情形中并且如先前提及的,声明性模型153包括一个或更多个关于特点分布式应用程序107的操作的高级指令集。这些高级指令一般描述分布式应用程序中的一个或更多个模块的特定操作/行为意图,但不必描述实现这些特定操作/行为所需的步骤。例如,声明性模型153可包括诸如关于特定模块应在什么计算机系统上运行、以及应被允许运行该特定模块的计算机系统的特性(例如,处理速度、存储容量等)的信息。
尽管声明性模型153可最终包括诸如特定端点的统一资源标识符(URI)地址等特定信息,但任何声明性模型(例如,153)的初始创建将通常得到将更可能包括一般化信息的文档。此类一般化信息可包括其中可执行模块的域名、可与模块的执行相关联的不同许可集合、某些组件是否应完全连接等。例如,声明性模型153可描述使一个web服务连接到另一个web服务的意图。
在被最终解读和/或翻译时,这些一般化意图指令可得到非常具体的指令/命令,这取决于平台或操作环境。例如,声明性模型153可包括指令,以使得这些指令在被解读时,部署在一个数据中心的web服务可被配置成如果一个其他web服务在附近则使用TCP传输。这些指令还可包括告知所开发的web服务若该其他web服务在防火墙外部(即,不在附近)则替换地使用因特网中继连接的指令。
尽管指示了对某种连接的偏好,但声明性模型(例如,“声明性应用模型”)(153)将通常把连接协议的选取留给模型解读器。具体而言,声明性模型创建器(例如,工具组件125)可一般地指示对声明性模型153中连接的偏好,但声明性模型解读器(例如,执行性组件115和/或因平台而异的驱动器130)可被配置成取决于部署特定模块的场合而选择不同的通信传输。例如,当各模块处于相同机器上、在集群中、或通过因特网连接时,模型解读器(例如,执行性组件115和/或因平台而异的驱动器130)可准备更具体的指令来区分各模块之间的连接。
类似地,另一个声明性模型(例如,“声明性策略模型”)(153)可基于更终端使用策略来描述可操作特征。例如,与分布式金融应用程序联用的声明性策略模型可指示1秒里不超过100条交易请求可在连接上被发送给经纪公司。然而,策略模型解读器(例如,执行性组件115和/或因平台而异的驱动器130)可被配置成选择恰适的策略,诸如令超出的请求排队以实现所描述的意图。
在任何情形中,图1A示出一旦创建了特定声明性模型153,工具组件125随后就将声明性模型153传递(例如,写入)到储存库120中。在至少一种实现中,任何时间储存库120接收到对声明性模型153的任何种类的修改(例如,新写入、或来自分析装置110的修改),执行性组件115将检测到这一点。例如,储存库120可向执行性组件115发送一个或更多个更新或警示。然而,在附加或替换实现中,执行性组件115可被配置成通过在某种特定调度或甚至连续基础上与储存库120同步来标识任何此类修改、创建、或改变。
在任一情形中,执行性组件115最终标识、接收并精炼储存库120中的声明性模型153(和/或对其的改变),从而它们能被因平台而异的驱动器130翻译。一般而言,“精炼”声明性模型153包括添加或修改声明性模型中包含的任何信息,以使得声明性模型指令足以完全被因平台而异的驱动器130翻译。由于声明性模型153可被人类用户相对宽松地写入(即,包含一般化意图指令或请求),因此可能存在执行性组件需要修改或补充声明性模型的不同程度或范围。
由此,图1B图解了关于经由实现装置105执行的精炼和翻译过程的附加细节。具体而言,图1B图解了可按照最终作为低级指令来实现各种声明性模型153而发生的数个附加过程。为此,图1B示出了执行性组件115包括一个或更多个不同的组件,它们可被用于使用逐步详细技术来精炼声明性模型153。
例如,图1A示出了执行性组件115包括调度处理组件117和精炼组件119。一般而言,调度处理组件117使得执行性组件115能标识储存库中对任何声明性模型的改变。例如,调度处理组件117可包括用于从储存库120中内建的相应接口接收通信的一个或更多个接口。补充地或替换地,调度处理组件117包括用于同步储存库内的声明性模型153数据的一个或更多个可执行指令集。
一旦检测到任何改变(无论是新的声明性模型还是对其更新),执行性组件115随后对任何如此标识的声明性模型(或修改)开始逐步详细的过程。一般而言,逐步详细涉及精炼特定声明性模型153(即,添加或修改数据)直至不存在不清楚,并直至细节足以使因平台而异的驱动器130能消耗/翻译它们。执行性组件115至少部分地使用精炼组件119来执行逐步详细,精炼组件119“精炼”声明性模型153数据。
在至少一种实现中,执行性组件115作为使用来自特定库(未示出)的活动集合的工作流来实现此逐步详细或“精炼”过程。在一种实现中,执行性组件115还预先提供该库,尤其是出于针对声明性模型进行工作的目的。此特定工作流中可使用的一些示例活动可包括“读模型数据”、“写模型数据”、“寻找驱动”、“调用驱动器”等。与这些或其他类型的调用相关联的动作在以下更详细地描述为由执行性组件115的精炼组件119部分来实现。
具体地,在至少一种实现中,精炼组件119精炼声明性模型153(或对其的更新)。精炼组件119通常通过基于对声明性模型153中的元素之间的依存性(例如,一个web服务连接到另一个)的知识添加信息来精炼声明性模型153。精炼组件119还可通过添加某些形式的上下文意识来精炼声明性模型153,诸如通过添加关于用于部署分布式应用程序107的应用容器135的可用库存的信息。此外,精炼组件119可被配置成填充关于计算机系统指派的缺失数据。
例如,精炼组件119可标识将被用于实现声明性模型153的数个不同模块,其中两个模块不需要特定计算机系统地址或操作要求。精炼组件119由此可将分布式应用程序107模块指派给由恰适的分布式应用程序容器135安排的可用计算机系统,并且相应地在经精炼的声明性模型153a(或其分段)中记录该机器信息。由此,精炼组件119可推理在经精炼的声明性模型153中填充数据的最佳途径。例如,如先前所描述的,执行性组件115的精炼组件119可基于连接接近性来确定并决定对端点使用什么传输,或者基于处理所要求的预期高峰恰适的因素来确定和决定如何分配分布式应用程序模块。
在附加或替换实现中,精炼组件119可计算声明性模型153中的相关数据。例如,精炼组件119可基于对机器的分布式应用程序模块指派来计算相关数据。由此,精炼组件119还可计算端点上的RUI地址,并将相应的URI地址从提供方端点传播至消费者端点。此外,精炼组件119可评估声明性模型153中的约束。例如,精炼组件119可被配置成检查两个分布式应用程序模块是否可实际上被指派给相同的机器,若否,则精炼组件119可精炼声明性模型153a以进行校正。
在向给定的声明性模型153添加了所有恰适数据(或以其他方式修改/精炼)(以创建模型153a)之后,精炼组件119可最终确定经精炼的声明性模型153a,以使得其能被因平台而异的驱动器130翻译。为了最终确定或完成经精炼的声明性模型153a,精炼组件119可以例如将声明性模型153划分成分段,这些分段可被任一个或多个因平台而异的驱动器130作为目标。为此,精炼组件119可用其目标驱动器(例如,因平台而异的驱动器130的地址)来标记每个声明性模型153a(或其分段)。此外,精炼组件119可验证声明性模型153a实际上是否能被因平台而异的驱动器130翻译,若如此,则将经精炼的声明性模型153a(或其分段)传递给特定的因平台而异的驱动器130以进行翻译。
在任何情形中,图1B示出了因平台而异的驱动器130通过翻译组件131来翻译这些指令。一般而言,翻译组件将经精炼的声明性模型153a(和/或其分段)翻译成一个或更多个因平台而异的指令/命令集合133。例如,图1B示出了因平台而异的驱动器130可创建能在特定操作系统或操作环境中执行、和/或将被特定应用容器135理解的命令式指令/命令集合133。在一种实现中,经精炼的声明性模型153a的翻译可导致创建文件、添加虚拟目录、将设置写入配置文件等。
无论翻译组件131执行的什么动作都将针对特定平台或操作环境被剪裁。具体而言,因平台而异的驱动器(例如,经由翻译组件131)可根据对与一个或更多个应用容器135相对应的给定平台/操作环境的深度的、因平台而异的配置知识(例如,它们在其中运行的操作系统的版本)以及容器实现技术来翻译经精炼的声明性模型。例如,对于微软视窗操作环境,某些容器实现技术可包括用于主存“WCF”——视窗通信基础——服务模块的“IIS”——因特网信息服务、或视窗激活服务。(然而,如先前所提及的,对任何视窗或微软组件、模块、平台、或程序的任何具体引用是仅作为示例的)。
结果,由根据组件125和/或精炼组件119放入声明性模型的一般化或补充指令最终指导一个或更多个应用容器135中的一个或更多个分布式应用程序107的操作实现。具体而言,一个或更多个分布式应用容器135通过执行从因平台而异的驱动器130接收到的命令/指令133来执行声明性模型153。为此,分布式应用容器135可用新的声明性模型153来替换或更新已被替换或修订的任何先前模块。此外,分布式应用容器135执行模块和/或组件的最新版本,诸如正常完成的版本,包括新的指令/命令133中描述的那些版本、以及任何数目的不同计算机系统上的版本。
除了前述内容以外,分布式应用程序107可通过实现装置105反向提供关于执行和性能的各种操作信息。例如,本发明的实现规定了分布式应用程序107通过因平台而异的驱动器130反向发回关于各种执行或性能指示符的一个或更多个事件流137。在一种实现中,分布式应用程序107可在连续的、正进行的基础上发出事件流137,而在其他实现中,分布式应用程序107在调度基础上发送事件流(例如,基于来自驱动器130的调度请求)。因平台而异的驱动器130又将一个或更多个事件流137传递到分析装置110以分析、调谐、和/或其他恰适的修改。
具体而言,并且如将在本文中更全面地理解的,分析装置110聚集、相关、或以其他方式过滤相关数据以标识各种分布式应用程序107的感兴趣趋势和行为。分析装置110还可恰适地针对所标识的趋势修改相应的声明性模型153。例如,分析装置110可修改声明性模型153以创建新的或以其他方式经修改的反映意图改变的声明性模型153b,诸如克服了事件流137中标识出的问题。具体而言,如果当前被指派的机器太过频繁地重启,则经修改的声明性模型153b可被配置成使得分布式应用程序的给定模块能被重新部署在另一个机器上。
经修改的声明性模型153b随后被传递回储存库120中。如先前所提及的,执行性组件115将标识新的声明性模型153b(或对先前的声明性模型153的修改)并开始相应的精炼过程。具体地,执行性组件将使用精炼组件119来向经修改的声明性模型153b添加任何必要数据,以创建诸如先前描述的经精炼的、经修改的声明性模型。被重新精炼的、但经修改的声明性模型153b随后被传递到因平台而异的驱动器130,在此其被翻译并传递给恰适的应用容器135进行处理。
相应地,图1A到1B(以及相应的文本)提供了用于自动实现分布式应用程序内的高级指令的多种不同的示意图、组件、和机制。如先前所描述的,这可以全部在无需服务器管理员对分布式应用程序及其容器的密切知识的情况下进行。
除了前述内容之外,本发明的各实现还可以借助于具有用于完成特定结果的一系列动作和/或步骤的方法的一个或更多个流程图来描述。例如,图2和3图解了从服务器的观点而言用于自动实现分布式应用程序中的一个或更多个高级指令集的附加或替换方法。图2和3的动作和/或步骤在以下参照图1A和1B的组件、示意图和相应文本来更全面地描述。
例如,图2示出从服务器的观点而言用于在执行期间自动实现分布式应用程序中的一个或更多个高级指令集的方法可包括用于标识一个或更多个声明性模型的动作200。动作200包括标识对储存库中的一个或更多个相应声明性模型的一个或更多个修改,该一个或更多个声明性模型包括关于分布式应用程序的一个或更多个操作的高级指令。例如,如图1A和1B中所示,工具组件125可被用于创建声明性模型153和/或将其传递到储存库120中。执行性组件115(例如,经由调度处理组件117)接收声明性模型153(或对其的相应更新)并开始处理。
图2还示出从服务器的观点而言一种方法可包括用上下文信息精炼声明性模型的动作210。动作210包括精炼所标识的一个或更多个声明性模型以包括关于分布式应用程序的操作的上下文信息。例如,执行性组件115可执行任何数目的动作,诸如填充声明性模型中的缺失数据、决定在模块之间的连接中使用什么传输、计算声明性模型中的相关数据、评估声明性模型中的约束等。
此外,图2示出了从服务器的观点而言该方法可包括翻译经精炼的声明性模型的动作220。动作220包括将一个或更多个经精炼的声明性模型翻译成将由分布式应用程序实现的一个或更多个命令。例如,图1A和1B中的实现装置105包括因平台而异的驱动器组件130,其接收与经精炼的声明性模型153a相对应的指令并通过翻译组件131来翻译经精炼的声明性模型153a,以便向一个或更多个应用容器135发送指令/命令集133。
此外,图2示出了从服务器的观点而言该方法可包括将经翻译的命令发送给应用容器的动作230。动作230包括将经翻译的命令发送给一个或更多个应用容器,其中经翻译的命令被接收和实现。例如,如图1A和1B中所示,一旦翻译了指令以创建因平台而异的指令/命令133,因平台而异的驱动器130就准备(例如,经由翻译组件131)这些指令并将其发送给一个或更多个应用容器135,在此这些指令被执行以配置和管理分布式应用程序。
除了以上内容之外,图3示出从服务器的观点而言用于自动实现一个或更多个高级指令集的附加或替换方法可包括接收一组新的声明性模型的动作300。动作300包括从储存库接收一组新的一个或更多个声明性模型,该新的一个或更多个声明性模型包括关于分布式应用程序的操作的高级指令。例如,执行性组件115通过储存库120接收声明性模型113。这些声明性模型113若其是新的则可来自工具组件125,或者诸如若它们响应于事件流137中的信息而被修改则可替换地经由分析装置110而来。
图3还示出从服务器的观点而言该方法可包括通过应用容器来实现新的声明性模型的动作310。动作310包括通过一个或更多个应用容器中的实现装置来实现新的一个或更多个声明性模型,其中第一低级命令集被准备好并被发送给一个或更多个应用容器以被执行。例如,图1A和1B示出了执行性组件115诸如经由调度处理组件117和精炼组件119来准备经精炼的声明性模型153a信息集。因平台而异的驱动器130随后将该信息翻译成专门指令/命令集133。这些专门指令/命令集133随后通过在相应的应用容器135中的执行来配置和控制分布式应用程序107的行为。
此外,图3示出了从服务器的观点而言一种方法可包括标识声明性模型中的改变的动作320。动作320包括经由一个或更多个分析装置来标识新的一个或更多个声明性模型中的改变,该改变反映了从一个或更多应用容器接收到的分布式应用程序的性能信息。例如,图1B示出了应用容器135通过实现装置105的因平台而异的驱动器130发回性能信息140。此信息随后被传递给分析装置110,该分析装置110若恰适则可改变或更新声明性模型113以适应任何性能问题。如先前所讨论的,事件流可标识服务器(或服务器上的模块)太过频繁地重启,且因此分析装置可创建对声明性模型(或153b)的修改,其标识将该模块重新部署到另一个服务器上。
此外,图3示出了从服务器的观点而言一种方法可包括将通过应用容器来实现声明性模型的经更新版本的动作330。动作330包括通过实现装置和一个或更多个应用容器来实现一个或更多个声明性模型的经更新版本,其中第二命令指令集被准备好并被发送给一个或更多个应用容器以供基于对该一个或更多个新的声明性模型的改变来执行。例如,图1B示出了实现装置105可接收经修改的声明性模型153b。如同模型153那样,声明性模型153b随后可通过执行性组件115被检测到并被精炼,执行性组件115随后将经精炼的、经修改的声明性模型153b指令传递给因平台而异的驱动器130以进行翻译。如以前一样,分布式应用容器135随后执行与经精炼的、经修改的声明性模型153b相对应的新的相应指令/命令,以重新配置其相应应用容器中的分布式应用程序。
相应地,图1A到3提供了用于在服务器级别上自动实现高级指令的数个示意图、组件、和机制,这些高级指令最终通过应用容器被实现为低级指令。如本文中所描述的,这些和其他优点使得服务器管理员能连续和自动地调整分布式应用程序操作,而无需对特定分布式应用程序的平台要求和规则的密切知识。这样,本发明的实现可跨分布式系统高度缩放,并且管理起来相对简单。
本发明的实施例可以包括含有各种计算机硬件的专用或通用计算机,这将在以下更详细地讨论。本发明的范围内的实施例也包括用于携带或其上储存有计算机可执行指令或数据结构的计算机可读介质。这样的机器可读介质可以是可由通用或专用计算机访问的任何可用介质。
作为示例而非限制,这样的计算机可读介质可包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储设备、或可用于携带或存储计算机可执行指令或数据结构形式的所需程序代码装置且可由通用或专用计算机访问的任何其他介质。当信息在网络或另一通信连接(硬连线、无线或硬连线或无线的组合)上传输或提供给计算机时,计算机将连接完全视为计算机可读介质。因此,任何这样的连接被适当地称为计算机可读介质。上述的组合也应被包括在计算机可读介质的范围内。
计算机可执行指令例如包括,使通用计算机、专用计算机、或专用处理设备执行某一功能或某组功能的指令和数据。尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述特定特征或动作。相反,上述特定特征和动作作为实现权利要求的示例形式公开。
本发明可具体化为其他具体形式而不背离其精神或本质特征。所述实施例在所有方面都应被认为仅是说明性而非限制性的。从而,本发明的范围由所附权利要求书而非前述描述指示。落入权利要求书的等效方式的含义和范围内的所有改变应被权利要求书的范围涵盖。
Claims (20)
1.在具有被配置在分布式计算机化系统环境中以通过一个或更多个因平台而异的驱动器来管理一个或更多个分布式应用程序的一个或更多个实现装置以及一个或更多个分析装置的服务器上,一种在执行期间使用声明性模型来自动实现分布式应用程序中的一个或更多个高级指令集的方法,包括以下动作:
标识对储存库中的一个或更多个相应声明性模型的一个或更多个修改,所述一个或更多个声明性模型包括关于分布式应用程序的一个或更多个操作的高级指令;
精炼所述一个或更多个声明性模型以包括关于所述分布式应用程序的操作的上下文信息;
将所述一个或更多个经精炼的声明性模型翻译成将由分布式应用容器实现的一个或更多个命令;以及
将所述经翻译的命令发送给一个或更多个应用容器,其中所述经翻译的命令被所述一个或更多个应用容器接收和执行以配置和控制所述分布式应用程序。
2.如权利要求1所述的方法,其特征在于,还包括将所述一个或更多个声明性模型存储在储存库中的动作,其中所述一个或更多个声明性模型可按需被检索。
3.如权利要求1所述的方法,其特征在于,所述一个或更多个声明性模型描述一个或更多个分布式应用程序操作意图,并且不包括用于实现所述分布式应用程序操作意图的具体信息。
4.如权利要求1所述的方法,其特征在于,所标识的一个或更多个修改标识一个或更多个新的声明性模型。
5.如权利要求1所述的方法,其特征在于,所标识的一个或更多个修改包括对已存在的一个或更多个现有声明性模型的更改。
6.如权利要求1所述的方法,其特征在于,还包括一旦标识了所述一个或更多个修改,执行性组件就调度向所述一个或更多个声明性模型的相应经修改形式添加信息的精炼过程。
7.如权利要求1所述的方法,其特征在于,精炼所述一个或更多个声明性模型还包括执行性组件添加关于所述一个或更多个声明性模型(153)中的任一个中的各元素之间的依存性以及所述一个或更多个应用容器(135)的库存的信息。
8.如权利要求1所述的方法,其特征在于,精炼所述一个或更多个声明性模型还包括添加所述一个或更多个声明性模型中由因平台而异的驱动器进行翻译所需的任何缺失数据。
9.如权利要求8所述的方法,其特征在于,添加任何缺失数据包括标识所述分布式应用程序的一个或更多个模块应在其上运行的特定计算机系统。
10.如权利要求8所述的方法,其特征在于,添加任何缺失数据包括确定将在所述分布式应用程序使用的所连接模块之间使用的一个或更多个传输协议。
11.如权利要求8所述的方法,其特征在于,添加任何缺失数据包括标识所述一个或更多个声明性模型中的至少之一内的任何相关数据。
12.如权利要求11所述的方法,其特征在于,还包括以下动作:
标识所标识的相关数据的一个或更多个URI地址;以及
在所标识的相关数据之间传播任何附加URI地址。
13.如权利要求8所述的方法,其特征在于,添加任何缺失数据还包括标识所述一个或更多个声明性模型中关于特定计算机系统上的一个或更多个分布式应用程序模块的位置的任何约束。
14.如权利要求8所述的方法,其特征在于,添加任何缺失数据还包括完成所述一个或更多个声明性模型以使得它们能被因平台而异的驱动器翻译。
15.如权利要求14所述的方法,其特征在于,完成将被翻译的所述一个或更多个声明性模型还包括在所述经精炼的、完成的一个或更多个声明性模型的每一个中包括因平台而异的驱动器的地址。
16.如权利要求15所述的方法,其特征在于,还包括执行性组件用每个因平台而异的驱动器来验证所述一个或更多个声明性模型以确定所述一个或更多个声明性模型中的每一个都能被翻译。
17.在具有被配置在分布式计算机化系统环境中以通过一个或更多个因平台而异的驱动器来管理一个或更多个分布式应用程序的一个或更多个实现装置以及一个或更多个分析装置的服务器上,一种在执行期间使用声明性模型在一个或更多个分布式应用容器中自动实现分布式应用程序中的一个或更多个高级指令集的方法,包括以下动作:
从储存库接收一组新的一个或更多个声明性模型,所述新的一个或更多个声明性模型包括关于分布式应用程序的操作的高级指令;
通过实现装置和一个或更多个应用容器来实现所述新的一个或更多个声明性模型,其中第一低级命令集被准备好并被发送给所述一个或更多个应用容器以供执行;
经由一个或更多个分析装置来标识所述新的一个或更多个声明性模型中的改变,所述改变反映了从所述一个或更多应用容器接收到的所述分布式应用程序的性能信息;以及
通过所述实现装置和所述一个或更多个应用容器来实现所述一个或更多个声明性模型的经更新版本,其中第二低级命令集被准备好并被发送给所述一个或更多个应用容器以供基于对所述新的一个或更多个声明性模型的改变来执行。
18.如权利要求17所述的方法,其特征在于,实现所述新的一个或更多个声明性模型还包括:
准备与所述新的一个或更多个声明性模型相对应的经精炼的一个或更多个新的指令的集合;以及
验证所述一个或更多个新的指令的集合能被因平台而异的驱动器翻译成所述第一低级命令集。
19.如权利要求17所述的方法,其特征在于,实现所述一个或更多个声明性模型的所述经更新版本还包括:
准备与所述一个或更多个声明性模型的所述经更新版本相对应的新的经精炼的一个或更多个经更新指令的集合;以及
验证所述新的经精炼的一个或更多个经更新指令的集合能被因平台而异的驱动器翻译成所述第二低级命令集。
20.在具有被配置在分布式计算机化系统环境中以通过一个或更多个因平台而异的驱动器来管理一个或更多个分布式应用程序的一个或更多个实现装置以及一个或更多个分析装置的服务器上,一种用于在执行期间使用声明性模型来自动实现分布式应用程序中的一个或更多个高级指令集的系统,包括:
用于标识对储存库中的一个或更多个相应声明性模型的一个或更多个修改的装置,所述一个或更多个声明性模型包括关于分布式应用程序的一个或更多个操作的高级指令;
用于精炼所述一个或更多个声明性模型以包括关于所述分布式应用程序的操作的上下文信息的装置;
用于将所述一个或更多个经精炼的声明性模型翻译成将由分布式应用容器实现的一个或更多个命令的装置;以及
用于将所述经翻译的命令发送给一个或更多个应用容器的装置,其中所述经翻译的命令被所述一个或更多个应用容器接收和执行以配置和控制所述分布式应用程序。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/771,816 | 2007-06-29 | ||
US11/771,816 US8239505B2 (en) | 2007-06-29 | 2007-06-29 | Progressively implementing declarative models in distributed systems |
PCT/US2008/067354 WO2009006026A2 (en) | 2007-06-29 | 2008-06-18 | Progressively implementing declarative models in distributed systems |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101689167A CN101689167A (zh) | 2010-03-31 |
CN101689167B true CN101689167B (zh) | 2012-02-29 |
Family
ID=40161609
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008800222423A Active CN101689167B (zh) | 2007-06-29 | 2008-06-18 | 在分布式系统中逐步实现声明性模型 |
Country Status (6)
Country | Link |
---|---|
US (1) | US8239505B2 (zh) |
EP (1) | EP2176778B1 (zh) |
JP (1) | JP5216853B2 (zh) |
CN (1) | CN101689167B (zh) |
TW (1) | TWI438684B (zh) |
WO (1) | WO2009006026A2 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060123345A1 (en) * | 2004-12-06 | 2006-06-08 | International Business Machines Corporation | Platform-independent markup language-based gui format |
US7970892B2 (en) * | 2007-06-29 | 2011-06-28 | Microsoft Corporation | Tuning and optimizing distributed systems with declarative models |
US7974939B2 (en) * | 2007-10-26 | 2011-07-05 | Microsoft Corporation | Processing model-based commands for distributed applications |
US8099720B2 (en) | 2007-10-26 | 2012-01-17 | Microsoft Corporation | Translating declarative models |
US8949772B1 (en) * | 2009-06-01 | 2015-02-03 | Amazon Technologies, Inc. | Dynamic model based software application development |
US10719645B1 (en) | 2010-05-27 | 2020-07-21 | The Mathworks, Inc. | Model structure analysis with integration of transformed slice |
US10657208B2 (en) | 2010-05-27 | 2020-05-19 | The Mathworks, Inc. | Analyzing model based on design interest |
WO2011149553A1 (en) * | 2010-05-27 | 2011-12-01 | The Mathworks, Inc. | Partitioning block diagrams into executable contextual models |
US8473783B2 (en) * | 2010-11-09 | 2013-06-25 | International Business Machines Corporation | Fault tolerance in distributed systems |
US8918448B2 (en) * | 2012-05-11 | 2014-12-23 | International Business Machines Corporation | Application component decomposition and deployment |
US9202047B2 (en) | 2012-05-14 | 2015-12-01 | Qualcomm Incorporated | System, apparatus, and method for adaptive observation of mobile device behavior |
US9319897B2 (en) | 2012-08-15 | 2016-04-19 | Qualcomm Incorporated | Secure behavior analysis over trusted execution environment |
US9747440B2 (en) | 2012-08-15 | 2017-08-29 | Qualcomm Incorporated | On-line behavioral analysis engine in mobile device with multiple analyzer model providers |
US9344465B2 (en) | 2012-12-04 | 2016-05-17 | International Business Machines Corporation | Correlating computing network events |
US10089582B2 (en) | 2013-01-02 | 2018-10-02 | Qualcomm Incorporated | Using normalized confidence values for classifying mobile device behaviors |
US9742559B2 (en) | 2013-01-22 | 2017-08-22 | Qualcomm Incorporated | Inter-module authentication for securing application execution integrity within a computing device |
EP2956884B1 (en) * | 2013-02-15 | 2020-09-09 | Qualcomm Incorporated | On-line behavioral analysis engine in mobile device with multiple analyzer model providers |
US10574714B2 (en) | 2014-06-25 | 2020-02-25 | Microsoft Technology Licensing, Llc | Stream-based reactive programming platform |
US20160246582A1 (en) * | 2015-02-25 | 2016-08-25 | Red Hat, Inc. | Generic Semantic Configuration Service |
US10318653B1 (en) | 2015-02-26 | 2019-06-11 | The Mathworks, Inc. | Systems and methods for creating harness models for model verification |
CN106372074A (zh) * | 2015-07-22 | 2017-02-01 | 中国科学院城市环境研究所 | 一种用于污染场地风险评估可视化系统的架构方法 |
US10540332B2 (en) | 2016-08-03 | 2020-01-21 | Microsoft Technology Licensing, Llc | Efficient denormalization of data instances |
US10545731B1 (en) | 2016-12-02 | 2020-01-28 | The Mathworks, Inc. | Variant modeling elements in graphical programs |
US11175894B2 (en) * | 2019-01-31 | 2021-11-16 | Salesforce.Com, Inc. | Flow analysis in an integration platform |
US11829689B1 (en) * | 2020-06-09 | 2023-11-28 | The Mathworks, Inc. | Systems and methods for creating variant regions in acausal simulation models |
CN113127209A (zh) * | 2021-05-12 | 2021-07-16 | 曙光信息产业(北京)有限公司 | 一种云计算执行调度方法、装置、电子设备及存储介质 |
US20230344714A1 (en) * | 2022-04-22 | 2023-10-26 | Microsoft Technology Licensing, Llc | Global intent-based configuration to local intent targets |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6854069B2 (en) * | 2000-05-02 | 2005-02-08 | Sun Microsystems Inc. | Method and system for achieving high availability in a networked computer system |
US7200530B2 (en) * | 2003-03-06 | 2007-04-03 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
Family Cites Families (205)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4751635A (en) | 1986-04-16 | 1988-06-14 | Bell Communications Research, Inc. | Distributed management support system for software managers |
US5574934A (en) | 1993-11-24 | 1996-11-12 | Intel Corporation | Preemptive priority-based transmission of signals using virtual channels |
US5423003A (en) | 1994-03-03 | 1995-06-06 | Geonet Limited L.P. | System for managing network computer applications |
US5809266A (en) | 1994-07-29 | 1998-09-15 | Oracle Corporation | Method and apparatus for generating reports using declarative tools |
US5655081A (en) | 1995-03-08 | 1997-08-05 | Bmc Software, Inc. | System for monitoring and managing computer resources and applications across a distributed computing environment using an intelligent autonomous agent architecture |
EP0733972B1 (en) | 1995-03-22 | 2003-07-09 | Sun Microsystems, Inc. | Method and apparatus for managing relationships among objects in a distributed object environment |
EP0733967B1 (en) | 1995-03-24 | 2005-02-09 | Hewlett-Packard Company, A Delaware Corporation | Methods and apparatus for monitoring events and implementing corrective action in a multi-entity computer system |
US5764241A (en) | 1995-11-30 | 1998-06-09 | Microsoft Corporation | Method and system for modeling and presenting integrated media with a declarative modeling language for representing reactive behavior |
US6185601B1 (en) | 1996-08-02 | 2001-02-06 | Hewlett-Packard Company | Dynamic load balancing of a network of client and server computers |
US6662205B1 (en) | 1996-10-01 | 2003-12-09 | International Business Machines Corporation | Scaleable and extensible system management architecture with dataless endpoints |
US5937388A (en) | 1996-12-05 | 1999-08-10 | Hewlett-Packard Company | System and method for performing scalable distribution of process flow activities in a distributed workflow management system |
US6710786B1 (en) | 1997-02-03 | 2004-03-23 | Oracle International Corporation | Method and apparatus for incorporating state information into a URL |
US6225995B1 (en) | 1997-10-31 | 2001-05-01 | Oracle Corporaton | Method and apparatus for incorporating state information into a URL |
US6026404A (en) | 1997-02-03 | 2000-02-15 | Oracle Corporation | Method and system for executing and operation in a distributed environment |
US6247056B1 (en) | 1997-02-03 | 2001-06-12 | Oracle Corporation | Method and apparatus for handling client request with a distributed web application server |
US5958010A (en) | 1997-03-20 | 1999-09-28 | Firstsense Software, Inc. | Systems and methods for monitoring distributed applications including an interface running in an operating system kernel |
US6230309B1 (en) | 1997-04-25 | 2001-05-08 | Sterling Software, Inc | Method and system for assembling and utilizing components in component object systems |
US6055363A (en) | 1997-07-22 | 2000-04-25 | International Business Machines Corporation | Managing multiple versions of multiple subsystems in a distributed computing environment |
US6005849A (en) | 1997-09-24 | 1999-12-21 | Emulex Corporation | Full-duplex communication processor which can be used for fibre channel frames |
US7024450B1 (en) | 1997-10-06 | 2006-04-04 | Mci, Inc. | Method and apparatus for deploying service modules among service nodes distributed in an intelligent network |
US6334114B1 (en) | 1997-10-31 | 2001-12-25 | Oracle Corporation | Method and apparatus for performing transactions in a stateless web environment which supports a declarative paradigm |
US6167538A (en) | 1998-03-06 | 2000-12-26 | Compaq Computer Corporation | Method and apparatus for monitoring components of a computer system |
US6330717B1 (en) | 1998-03-27 | 2001-12-11 | Sony Corporation Of Japan | Process and system for developing an application program for a distributed adaptive run-time platform |
US6070190A (en) | 1998-05-11 | 2000-05-30 | International Business Machines Corporation | Client-based application availability and response monitoring and reporting for distributed computing environments |
US6263339B1 (en) | 1998-08-25 | 2001-07-17 | Informix Software, Inc. | Dynamic object visualization and code generation |
US6327622B1 (en) | 1998-09-03 | 2001-12-04 | Sun Microsystems, Inc. | Load balancing in a network environment |
US6342907B1 (en) | 1998-10-19 | 2002-01-29 | International Business Machines Corporation | Specification language for defining user interface panels that are platform-independent |
US6415297B1 (en) | 1998-11-17 | 2002-07-02 | International Business Machines Corporation | Parallel database support for workflow management systems |
US6728748B1 (en) | 1998-12-01 | 2004-04-27 | Network Appliance, Inc. | Method and apparatus for policy based class of service and adaptive service level management within the context of an internet and intranet |
US6279009B1 (en) | 1998-12-04 | 2001-08-21 | Impresse Corporation | Dynamic creation of workflows from deterministic models of real world processes |
US6546364B1 (en) * | 1998-12-18 | 2003-04-08 | Impresse Corporation | Method and apparatus for creating adaptive workflows |
US6336217B1 (en) | 1998-12-30 | 2002-01-01 | International Business Machines Corporation | Systems, methods and computer program products for end-to-end software development process automation |
US20020135611A1 (en) | 1999-03-04 | 2002-09-26 | Trevor Deosaran | Remote performance management to accelerate distributed processes |
US6430576B1 (en) | 1999-05-10 | 2002-08-06 | Patrick Gates | Distributing and synchronizing objects |
US6618719B1 (en) | 1999-05-19 | 2003-09-09 | Sybase, Inc. | Database system with methodology for reusing cost-based optimization decisions |
US6493594B1 (en) * | 1999-06-04 | 2002-12-10 | Lucent Technologies Inc. | System and method for improved software configuration and control management in multi-module systems |
US6662356B1 (en) | 1999-06-30 | 2003-12-09 | Microsoft Corporation | Application program interface for transforming heterogeneous programs |
US6640241B1 (en) | 1999-07-19 | 2003-10-28 | Groove Networks, Inc. | Method and apparatus for activity-based collaboration by a computer system equipped with a communications manager |
US6718535B1 (en) | 1999-07-30 | 2004-04-06 | Accenture Llp | System, method and article of manufacture for an activity framework design in an e-commerce based environment |
US6477665B1 (en) | 1999-08-31 | 2002-11-05 | Accenture Llp | System, method, and article of manufacture for environment services patterns in a netcentic environment |
US6715145B1 (en) | 1999-08-31 | 2004-03-30 | Accenture Llp | Processing pipeline in a base services pattern environment |
WO2001025919A2 (en) | 1999-10-01 | 2001-04-12 | Accenture Llp | Architectures for netcentric computing systems |
JP3738624B2 (ja) | 1999-10-26 | 2006-01-25 | 日本電気株式会社 | 分散アプリケーション制御システム及び制御方法並びにプログラムを記録した記録媒体 |
AU2001227857A1 (en) | 2000-01-14 | 2001-07-24 | Saba Software, Inc. | Method and apparatus for a business applications management system platform |
US6938256B2 (en) | 2000-01-18 | 2005-08-30 | Galactic Computing Corporation | System for balance distribution of requests across multiple servers using dynamic metrics |
US7328233B2 (en) | 2000-01-19 | 2008-02-05 | Corybant, Inc. | Method and apparatus for implementing an active information model |
US6654783B1 (en) | 2000-03-30 | 2003-11-25 | Ethergent Corporation | Network site content indexing method and associated system |
US6687735B1 (en) | 2000-05-30 | 2004-02-03 | Tranceive Technologies, Inc. | Method and apparatus for balancing distributed applications |
US20020038217A1 (en) | 2000-04-07 | 2002-03-28 | Alan Young | System and method for integrated data analysis and management |
US7392210B1 (en) | 2000-04-07 | 2008-06-24 | Jpmorgan Chase Bank, N.A. | Workflow management system and method |
US7310801B2 (en) | 2000-04-27 | 2007-12-18 | Microsoft Corporation | Servicing a component-based software product throughout the software product lifecycle |
US6922685B2 (en) | 2000-05-22 | 2005-07-26 | Mci, Inc. | Method and system for managing partitioned data resources |
US7051098B2 (en) | 2000-05-25 | 2006-05-23 | United States Of America As Represented By The Secretary Of The Navy | System for monitoring and reporting performance of hosts and applications and selectively configuring applications in a resource managed system |
US7685239B2 (en) | 2000-06-28 | 2010-03-23 | Canon Kabushiki Kaisha | Image communication apparatus, image communication method, and memory medium |
US20030172135A1 (en) | 2000-09-01 | 2003-09-11 | Mark Bobick | System, method, and data structure for packaging assets for processing and distribution on multi-tiered networks |
AU2001287003A1 (en) | 2000-09-01 | 2002-03-13 | Op40, Inc. | System and method for collaboration using web browsers |
US6920458B1 (en) | 2000-09-22 | 2005-07-19 | Sas Institute Inc. | Model repository |
US6944759B1 (en) * | 2000-09-29 | 2005-09-13 | Hewlett-Packard Development Company, L.P. | Automatic system configuration management |
US6915338B1 (en) | 2000-10-24 | 2005-07-05 | Microsoft Corporation | System and method providing automatic policy enforcement in a multi-computer service application |
US6907395B1 (en) | 2000-10-24 | 2005-06-14 | Microsoft Corporation | System and method for designing a logical model of a distributed computer system and deploying physical resources according to the logical model |
WO2002035395A2 (en) | 2000-10-27 | 2002-05-02 | Entigen Corporation | Integrating heterogeneous data and tools |
US7174359B1 (en) | 2000-11-09 | 2007-02-06 | International Business Machines Corporation | Apparatus and methods for sequentially scheduling a plurality of commands in a processing environment which executes commands concurrently |
US7600014B2 (en) | 2000-11-16 | 2009-10-06 | Symantec Corporation | Method and system for monitoring the performance of a distributed application |
US7020869B2 (en) | 2000-12-01 | 2006-03-28 | Corticon Technologies, Inc. | Business rules user interface for development of adaptable enterprise applications |
US7296268B2 (en) | 2000-12-18 | 2007-11-13 | Microsoft Corporation | Dynamic monitor and controller of availability of a load-balancing cluster |
US6931644B2 (en) | 2000-12-21 | 2005-08-16 | International Business Machines Corporation | Hierarchical connected graph model for implementation of event management design |
WO2002057917A2 (en) | 2001-01-22 | 2002-07-25 | Sun Microsystems, Inc. | Peer-to-peer network computing platform |
US20020111841A1 (en) | 2001-02-09 | 2002-08-15 | International Business Machines Corporation | Controlling commands in workflow management systems |
US20020147962A1 (en) * | 2001-02-12 | 2002-10-10 | International Business Machines Corporation | Method and system for incorporating legacy applications into a distributed data processing environment |
US6801818B2 (en) | 2001-03-14 | 2004-10-05 | The Procter & Gamble Company | Distributed product development |
ES2333697T3 (es) | 2001-04-05 | 2010-02-26 | Inpeco Ip Ltd. | Metodo para la gestion de sistemas de celula de trabajo basado en un sistema de gestion de la automatizacion. |
US6934702B2 (en) | 2001-05-04 | 2005-08-23 | Sun Microsystems, Inc. | Method and system of routing messages in a distributed search network |
US6948151B2 (en) | 2001-06-29 | 2005-09-20 | International Business Machines Corporation | System and method for dynamic packaging of component objects |
US20050155042A1 (en) | 2001-07-02 | 2005-07-14 | Michael Kolb | Component-based system for distributed applications |
US7055143B2 (en) | 2001-07-10 | 2006-05-30 | Microsoft Corporation | System and methods for providing a declarative syntax for specifying SOAP-based web services |
US7174379B2 (en) * | 2001-08-03 | 2007-02-06 | International Business Machines Corporation | Managing server resources for hosted applications |
US7444618B2 (en) | 2001-08-06 | 2008-10-28 | Tata Consultancy Services Limited | Automatic generation of batch programs with identification, insertion of invariables, declarative statements and variables with the use of place-marks |
CA2357087C (en) | 2001-09-06 | 2009-07-21 | Cognos Incorporated | Deployment manager for organizing and deploying an application in a distributed computing environment |
US20030135384A1 (en) | 2001-09-27 | 2003-07-17 | Huy Nguyen | Workflow process method and system for iterative and dynamic command generation and dynamic task execution sequencing including external command generator and dynamic task execution sequencer |
US7660886B2 (en) | 2001-09-27 | 2010-02-09 | International Business Machines Corporation | Apparatus and method of representing real-time distributed command execution status across distributed systems |
US7035930B2 (en) | 2001-10-26 | 2006-04-25 | Hewlett-Packard Development Company, L.P. | Method and framework for generating an optimized deployment of software applications in a distributed computing environment using layered model descriptions of services and servers |
US7085837B2 (en) | 2001-12-04 | 2006-08-01 | International Business Machines Corporation | Dynamic resource allocation using known future benefits |
WO2003050674A1 (en) | 2001-12-07 | 2003-06-19 | Dbase, Inc. | Drag-and-drop dynamic distributed object model |
AU2003205083A1 (en) | 2002-01-11 | 2003-07-30 | Akamai Tech Inc | Java application framework for use in a content delivery network (cdn) |
US7152229B2 (en) | 2002-01-18 | 2006-12-19 | Symbol Technologies, Inc | Workflow code generator |
EP1476834A1 (en) | 2002-02-07 | 2004-11-17 | Thinkdynamics Inc. | Method and system for managing resources in a data center |
US20030195763A1 (en) | 2002-04-11 | 2003-10-16 | International Business Machines Corporation | Method and system for managing a distributed workflow |
US7490322B2 (en) * | 2002-04-11 | 2009-02-10 | International Business Machines Corporation | Software distribution method and system |
US7130881B2 (en) | 2002-05-01 | 2006-10-31 | Sun Microsystems, Inc. | Remote execution model for distributed application launch and control |
US7072898B2 (en) | 2002-05-30 | 2006-07-04 | Oracle International Corporation | Method and apparatus for exchanging communications between heterogeneous applications |
US7415483B2 (en) | 2002-06-05 | 2008-08-19 | Sap Ag | Individual data objects in enterprise computing systems |
US7210143B2 (en) | 2002-07-17 | 2007-04-24 | International Business Machines Corporation | Deployment of applications in a multitier compute infrastructure |
US20040040015A1 (en) | 2002-08-23 | 2004-02-26 | Netdelivery Corporation | Systems and methods for implementing extensible generic applications |
US6847970B2 (en) | 2002-09-11 | 2005-01-25 | International Business Machines Corporation | Methods and apparatus for managing dependencies in distributed systems |
US7240325B2 (en) | 2002-09-11 | 2007-07-03 | International Business Machines Corporation | Methods and apparatus for topology discovery and representation of distributed applications and services |
US7096311B2 (en) | 2002-09-30 | 2006-08-22 | Innopath Software, Inc. | Updating electronic files using byte-level file differencing and updating algorithms |
US7167915B2 (en) | 2002-10-18 | 2007-01-23 | International Business Machines Corporation | Monitoring storage resources used by computer applications distributed across a network |
US20040088350A1 (en) | 2002-10-31 | 2004-05-06 | General Electric Company | Method, system and program product for facilitating access to instrumentation data in a heterogeneous distributed system |
CA2412747A1 (en) | 2002-11-26 | 2004-05-26 | Cognos Incorporated | System and method for monitoring business performance |
US20050251546A1 (en) | 2002-12-11 | 2005-11-10 | International Business Machines Corporation | Method and system for configuring processing entities according to their roles in a data processing system with a distributed architecture |
US7395526B2 (en) | 2002-12-23 | 2008-07-01 | Sun Microsystems, Inc. | Method and system for managing application server lifecycle |
US20040148370A1 (en) | 2003-01-23 | 2004-07-29 | Electronic Data Systems Corporation | System and method for composing, configuring, deploying, and managing services using a graphical user interface |
US7168077B2 (en) | 2003-01-31 | 2007-01-23 | Handysoft Corporation | System and method of executing and controlling workflow processes |
US8122106B2 (en) | 2003-03-06 | 2012-02-21 | Microsoft Corporation | Integrating design, deployment, and management phases for systems |
US7890543B2 (en) | 2003-03-06 | 2011-02-15 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
US7302609B2 (en) | 2003-03-12 | 2007-11-27 | Vladimir Matena | Method and apparatus for executing applications on a distributed computer system |
US20040186905A1 (en) | 2003-03-20 | 2004-09-23 | Young Donald E. | System and method for provisioning resources |
US20040187140A1 (en) | 2003-03-21 | 2004-09-23 | Werner Aigner | Application framework |
US8161094B2 (en) | 2003-06-04 | 2012-04-17 | Sony Computer Entertainment Inc. | System and method for notification within decentralized network |
US6915656B2 (en) | 2003-07-14 | 2005-07-12 | Eco Technology Solutions, Llc | Heat pump system |
US7590643B2 (en) * | 2003-08-21 | 2009-09-15 | Microsoft Corporation | Systems and methods for extensions and inheritance for units of information manageable by a hardware/software interface system |
US7403956B2 (en) | 2003-08-29 | 2008-07-22 | Microsoft Corporation | Relational schema format |
US7503043B2 (en) | 2003-09-05 | 2009-03-10 | International Business Machines Corporation | Method of building dynamic installation packages using a declarative authoring tool |
US8452881B2 (en) | 2004-09-28 | 2013-05-28 | Toufic Boubez | System and method for bridging identities in a service oriented architecture |
US20050071737A1 (en) | 2003-09-30 | 2005-03-31 | Cognos Incorporated | Business performance presentation user interface and method for presenting business performance |
US20050074003A1 (en) | 2003-10-02 | 2005-04-07 | Ball David Alexander | Distributed software architecture for implementing BGP |
US7379999B1 (en) | 2003-10-15 | 2008-05-27 | Microsoft Corporation | On-line service/application monitoring and reporting system |
US7103874B2 (en) * | 2003-10-23 | 2006-09-05 | Microsoft Corporation | Model-based management of computer systems and distributed applications |
WO2005043323A2 (en) | 2003-10-27 | 2005-05-12 | Archivas, Inc. | Policy-based management of a redundant array of independent nodes |
US20050108703A1 (en) * | 2003-11-18 | 2005-05-19 | Hellier Charles R. | Proactive policy-driven service provisioning framework |
US20050120106A1 (en) | 2003-12-02 | 2005-06-02 | Nokia, Inc. | System and method for distributing software updates to a network appliance |
US7454496B2 (en) | 2003-12-10 | 2008-11-18 | International Business Machines Corporation | Method for monitoring data resources of a data processing network |
US20050137839A1 (en) | 2003-12-19 | 2005-06-23 | Nikolai Mansurov | Methods, apparatus and programs for system development |
US20050149940A1 (en) | 2003-12-31 | 2005-07-07 | Sychron Inc. | System Providing Methodology for Policy-Based Resource Allocation |
US20050188075A1 (en) | 2004-01-22 | 2005-08-25 | International Business Machines Corporation | System and method for supporting transaction and parallel services in a clustered system based on a service level agreement |
US8197325B2 (en) * | 2004-01-27 | 2012-06-12 | Integrated Group Assets Inc. | Method and apparatus for providing an instant lottery game and a supplemental game |
US20050182750A1 (en) | 2004-02-13 | 2005-08-18 | Memento, Inc. | System and method for instrumenting a software application |
US20050198628A1 (en) * | 2004-03-04 | 2005-09-08 | Graham Christoph J. | Creating a platform specific software image |
JP2005266917A (ja) | 2004-03-16 | 2005-09-29 | Nec Corp | 分散資源獲得システム、分散資源獲得方法および分散資源獲得用プログラム |
US7822662B2 (en) | 2004-03-29 | 2010-10-26 | Microsoft Corporation | Key performance indicator system and method |
US8271541B2 (en) | 2004-03-31 | 2012-09-18 | Fusionops Corporation | Method and apparatus for developing composite applications |
US7079010B2 (en) | 2004-04-07 | 2006-07-18 | Jerry Champlin | System and method for monitoring processes of an information technology system |
US7526734B2 (en) | 2004-04-30 | 2009-04-28 | Sap Ag | User interfaces for developing enterprise applications |
US7376534B2 (en) | 2004-05-21 | 2008-05-20 | Bea Systems, Inc. | Watches and notifications |
US7370296B2 (en) | 2004-05-25 | 2008-05-06 | International Business Machines Corporation | Modeling language and method for address translation design mechanisms in test generation |
US7487080B1 (en) | 2004-07-08 | 2009-02-03 | The Mathworks, Inc. | Partitioning a model in modeling environments |
US7747641B2 (en) | 2004-07-09 | 2010-06-29 | Microsoft Corporation | Modeling sequence and time series data in predictive analytics |
US7716253B2 (en) | 2004-07-09 | 2010-05-11 | Microsoft Corporation | Centralized KPI framework systems and methods |
US7467078B2 (en) | 2004-07-16 | 2008-12-16 | Agilent Technologies Inc. | Portable distributed application framework |
US7561673B2 (en) | 2004-09-30 | 2009-07-14 | Microsoft Corporation | Integration of speech services with telecommunications |
US7796520B2 (en) | 2004-09-30 | 2010-09-14 | Avaya Canada Corp. | System and methods for announcing and locating services in a distributed peer-to-peer network |
US20060070066A1 (en) | 2004-09-30 | 2006-03-30 | Grobman Steven L | Enabling platform network stack control in a virtualization platform |
US7631291B2 (en) | 2004-10-01 | 2009-12-08 | Microsoft Corporation | Declarative representation for an extensible workflow model |
US8170901B2 (en) | 2004-10-01 | 2012-05-01 | Microsoft Corporation | Extensible framework for designing workflows |
JP4167643B2 (ja) | 2004-10-27 | 2008-10-15 | 株式会社日立製作所 | 業務システムの運用方法、運用管理システムおよび運用プログラム |
US20060095443A1 (en) | 2004-10-29 | 2006-05-04 | Kerika, Inc. | Idea page system and method |
US8032863B2 (en) | 2004-11-18 | 2011-10-04 | Parasoft Corporation | System and method for global group reporting |
US20060130047A1 (en) | 2004-11-30 | 2006-06-15 | Microsoft Corporation | System and apparatus for software versioning |
US7451435B2 (en) * | 2004-12-07 | 2008-11-11 | Microsoft Corporation | Self-describing artifacts and application abstractions |
US20060155738A1 (en) | 2004-12-16 | 2006-07-13 | Adrian Baldwin | Monitoring method and system |
US9535679B2 (en) * | 2004-12-28 | 2017-01-03 | International Business Machines Corporation | Dynamically optimizing applications within a deployment server |
KR20060082353A (ko) | 2005-01-12 | 2006-07-18 | 와이더댄 주식회사 | 실행가능 웹 컨텐트 제공 및 처리 시스템 및 방법 |
US20060161862A1 (en) | 2005-01-20 | 2006-07-20 | Microsoft Corporation | Enabling users to create and use a directory of document links from within a file menu of an application |
US20070050446A1 (en) | 2005-02-01 | 2007-03-01 | Moore James F | Managing network-accessible resources |
JP2006228115A (ja) * | 2005-02-21 | 2006-08-31 | Ntt Comware Corp | 負荷分散予測装置及び負荷分散制御方法並びにそのプログラム、負荷分散制御システムおよび当該システムにおける負荷分散制御方法 |
US7895566B2 (en) | 2005-03-10 | 2011-02-22 | Research In Motion Limited | System and method for building a deployable component based application |
US7747985B2 (en) | 2005-03-18 | 2010-06-29 | Microsoft Corporation | Conformance testing of multi-threaded and distributed software systems |
US7770151B2 (en) | 2005-04-07 | 2010-08-03 | International Business Machines Corporation | Automatic generation of solution deployment descriptors |
US7979520B2 (en) | 2005-04-15 | 2011-07-12 | Microsoft Corporation | Prescriptive architecture recommendations |
US20060236254A1 (en) | 2005-04-18 | 2006-10-19 | Daniel Mateescu | System and method for automated building of component based applications for visualizing complex data structures |
EP1715419A1 (en) | 2005-04-22 | 2006-10-25 | Ubs Ag | A technique for platform-independent service modeling |
JP4372043B2 (ja) | 2005-05-12 | 2009-11-25 | 株式会社ソニー・コンピュータエンタテインメント | コマンド実行制御装置、コマンド実行指示装置およびコマンド実行制御方法 |
US7757213B2 (en) | 2005-05-18 | 2010-07-13 | Microsoft Corporation | Aggregation-based management of a distributed business process application |
EP1729213A1 (en) | 2005-05-30 | 2006-12-06 | Honda Research Institute Europe GmbH | Development of parallel/distributed applications |
US20070005300A1 (en) | 2005-05-31 | 2007-01-04 | David Haggerty | Systems and methods for graphically defining automated test procedures |
US7761851B2 (en) | 2005-05-31 | 2010-07-20 | International Business Machines Corporation | Computer method and system for integrating software development and deployment |
US7703075B2 (en) | 2005-06-22 | 2010-04-20 | Microsoft Corporation | Programmable annotation inference |
US7359824B2 (en) | 2005-06-29 | 2008-04-15 | International Business Machines Corporation | Systems and methods for a distributed execution environment with per-command environment management |
ES2383307T3 (es) | 2005-07-29 | 2012-06-20 | Telecom Italia S.P.A. | Procedimiento y sistema para generar señales de instrucción para realizar intervenciones en una red de comunicación, y producto de programa informático correspondiente |
JP5019817B2 (ja) | 2005-08-15 | 2012-09-05 | 株式会社リコー | 情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体 |
US7454492B2 (en) | 2005-08-26 | 2008-11-18 | International Business Machines Corporation | Method and apparatus for configuring and modeling server information in an enterprise tooling environment |
US20070050237A1 (en) | 2005-08-30 | 2007-03-01 | Microsoft Corporation | Visual designer for multi-dimensional business logic |
US7818714B2 (en) | 2005-09-15 | 2010-10-19 | Microsoft Corporation | Integration of process and workflows into a business application framework |
US7430559B2 (en) | 2005-09-21 | 2008-09-30 | Microsoft Corporation | Generalized idempotent requests |
FR2891077B1 (fr) | 2005-09-22 | 2008-12-12 | Xcalia Sa | Systeme de mise en oeuvre d'une application metier. |
US8407610B2 (en) | 2005-09-30 | 2013-03-26 | Sap Portals Israel Ltd. | Executable and declarative specification for graphical user interfaces |
US20070237133A1 (en) | 2005-10-07 | 2007-10-11 | Steven Woods | System and method for providing content, applications, services and digital media to users in a peer-to-peer network |
US7941309B2 (en) | 2005-11-02 | 2011-05-10 | Microsoft Corporation | Modeling IT operations/policies |
US7512707B1 (en) | 2005-11-03 | 2009-03-31 | Adobe Systems Incorporated | Load balancing of server clusters |
US8397209B2 (en) | 2005-11-17 | 2013-03-12 | The Government Of The United States Of America, As Represented By The Secretary Of The Navy | Software modeling system and method |
WO2007072501A2 (en) | 2005-12-19 | 2007-06-28 | Mphasis Bfl Limited | A system and a methodology for providing integrated business performance management platform |
US8122427B2 (en) | 2006-01-04 | 2012-02-21 | Microsoft Corporation | Decentralized system services |
US20070174228A1 (en) | 2006-01-17 | 2007-07-26 | Microsoft Corporation | Graphical representation of key performance indicators |
US20070179823A1 (en) | 2006-01-30 | 2007-08-02 | Kumar Bhaskaran | Observation modeling |
US7869585B2 (en) | 2006-03-17 | 2011-01-11 | Microsoft Corporation | Declarations for transformations within service sequences |
US20070226681A1 (en) | 2006-03-23 | 2007-09-27 | Bestbrains Aps | System for annotation based model driven software development |
US20070244904A1 (en) | 2006-04-18 | 2007-10-18 | Kristopher Durski | Method and Architecture for Goal Oriented Applications, Configurations and Workflow Solutions on-the-Fly |
US8214474B2 (en) | 2006-04-18 | 2012-07-03 | International Business Machines Corporation | Autonomic computing system with model transfer |
US7774744B2 (en) | 2006-04-26 | 2010-08-10 | Sap Ag | Using relatedness information for programming |
US20070288885A1 (en) | 2006-05-17 | 2007-12-13 | The Mathworks, Inc. | Action languages for unified modeling language model |
US8793584B2 (en) | 2006-05-24 | 2014-07-29 | International Business Machines Corporation | Customizable user interface wrappers for web applications |
US7996830B2 (en) | 2006-06-05 | 2011-08-09 | International Business Machines Corporation | Programming model generic application deployment |
US7844942B2 (en) | 2006-06-12 | 2010-11-30 | International Business Machines Corporation | System and method for model driven transformation filtering |
US20070294364A1 (en) | 2006-06-15 | 2007-12-20 | International Business Machines Corporation | Management of composite software services |
US7735060B2 (en) | 2006-06-29 | 2010-06-08 | Augusta Systems, Inc. | Method and system for rapidly developing and deploying sensor-enabled software applications |
US8095923B2 (en) | 2006-06-29 | 2012-01-10 | Augusta Systems, Inc. | System and method for deploying and managing intelligent nodes in a distributed network |
US8381180B2 (en) | 2006-09-08 | 2013-02-19 | Sap Ag | Visually exposing data services to analysts |
US8316364B2 (en) | 2007-02-28 | 2012-11-20 | Red Hat, Inc. | Peer-to-peer software update distribution network |
US20080244423A1 (en) | 2007-03-28 | 2008-10-02 | Sap Ag | Melting groups |
US8667318B2 (en) | 2007-05-14 | 2014-03-04 | Picongen Wireless, Inc. | Method and apparatus for wireless clock regeneration |
US7970892B2 (en) | 2007-06-29 | 2011-06-28 | Microsoft Corporation | Tuning and optimizing distributed systems with declarative models |
US7797289B2 (en) | 2007-09-05 | 2010-09-14 | Oracle International Corporation | Method and apparatus for automatically executing rules in enterprise systems |
US7974939B2 (en) | 2007-10-26 | 2011-07-05 | Microsoft Corporation | Processing model-based commands for distributed applications |
US8099720B2 (en) | 2007-10-26 | 2012-01-17 | Microsoft Corporation | Translating declarative models |
US8015281B2 (en) | 2008-04-21 | 2011-09-06 | Microsoft Corporation | Dynamic server flow control in a hybrid peer-to-peer network |
-
2007
- 2007-06-29 US US11/771,816 patent/US8239505B2/en active Active
-
2008
- 2008-06-18 CN CN2008800222423A patent/CN101689167B/zh active Active
- 2008-06-18 EP EP08780846.5A patent/EP2176778B1/en active Active
- 2008-06-18 WO PCT/US2008/067354 patent/WO2009006026A2/en active Application Filing
- 2008-06-18 JP JP2010514983A patent/JP5216853B2/ja not_active Expired - Fee Related
- 2008-06-20 TW TW097123129A patent/TWI438684B/zh not_active IP Right Cessation
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6854069B2 (en) * | 2000-05-02 | 2005-02-08 | Sun Microsystems Inc. | Method and system for achieving high availability in a networked computer system |
US7200530B2 (en) * | 2003-03-06 | 2007-04-03 | Microsoft Corporation | Architecture for distributed computing system and automated design, deployment, and management of distributed applications |
Also Published As
Publication number | Publication date |
---|---|
CN101689167A (zh) | 2010-03-31 |
EP2176778A2 (en) | 2010-04-21 |
WO2009006026A2 (en) | 2009-01-08 |
EP2176778A4 (en) | 2011-10-12 |
JP5216853B2 (ja) | 2013-06-19 |
TW200903332A (en) | 2009-01-16 |
WO2009006026A3 (en) | 2009-03-19 |
US20090006062A1 (en) | 2009-01-01 |
JP2010532532A (ja) | 2010-10-07 |
US8239505B2 (en) | 2012-08-07 |
TWI438684B (zh) | 2014-05-21 |
EP2176778B1 (en) | 2018-05-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101689167B (zh) | 在分布式系统中逐步实现声明性模型 | |
EP1739515B1 (en) | Kanban control cycle system | |
CN101836201B (zh) | 用于翻译声明性模型的方法及系统 | |
AU2006217563B2 (en) | Distributed asset management system and method | |
CN101310265B (zh) | 生产性套件到业务线的同步机制 | |
CN101699427B (zh) | 电子表格基于单元格的通知 | |
CN101042704B (zh) | 用于依照公共信息模型来管理对象的系统和方法 | |
US8924920B2 (en) | Providing a software appliance based on a role | |
US20090125359A1 (en) | Integrating a methodology management system with project tasks in a project management system | |
CN105138313A (zh) | 客户机应用程序和网页集成 | |
KR100715077B1 (ko) | 공급자 및 고객 장치 사이의 통신을 위한 방법 및 시스템 | |
CN101796752A (zh) | 无限企业平台 | |
CN101432694A (zh) | 业务流程元模型 | |
CN101286212A (zh) | 业务流程执行方法、业务流程引擎及其部署方法 | |
CN1987923A (zh) | 为预装载软件进行许可激活 | |
US20090171758A1 (en) | Architectural design for physical inventory application software | |
CN104067258A (zh) | 平台运行时间抽象 | |
AU2008203816B2 (en) | Message sequence management of enterprise based correlated events | |
US8239851B2 (en) | Business scope dependent add-on content provisioning | |
CN101326515A (zh) | 元数据驱动的应用程序部署 | |
CN108153223B (zh) | 用于材料处置系统的可扩缩实时网络应用的阶段式部属 | |
CN101719244A (zh) | 处理库存单据的方法、应用服务器和企业网络系统 | |
US9059992B2 (en) | Distributed mobile enterprise application platform | |
KR20050033799A (ko) | 컴퓨터 판독가능 매체 및 통신 프로토콜 수립 방법 | |
CN111429072B (zh) | 用于处理器具需求信息的方法和装置 |
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: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150506 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150506 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |