首页 / 专利库 / 电脑零配件 / 计算机系统 / 软件 / 软件套件 / 软件组件 / 管理服务应用程序中的组件程序

管理服务应用程序中的组件程序

阅读:686发布:2024-01-06

专利汇可以提供管理服务应用程序中的组件程序专利检索,专利查询,专利分析的服务。并且提供了各种方法、系统、以及其上包含计算机可执行指令的计算机存储介质,这些指令在被执行时执行根据本 发明 的各 实施例 的用于根据服务模型来管理服务应用程序中的组件程序的方法。最初,从服务模型中提取可给予组件程序的配置设置。启动用于根据对服务应用程序上的负载 水 平和/或服务模型中的规约的改变来管理服务应用程序的实例化过程。该实例化过程包括在 数据中心 内部署组件程序或将其标识为可用,以及自动在所部署的组件程序中传播从配置设置导出的公式化值。将这些导出的公式化值安装到组件程序中,由此提供与服务模型一致的服务应用程序的功能。,下面是管理服务应用程序中的组件程序专利的具体信息内容。

1.一种或多种其上包含计算机可执行指令的计算机存储介质,所述指令在被执行时执行一种用于根据服务模型来管理服务应用程序中的一个或多个组件程序的方法,所述方法包括:
确定所述服务应用程序上的负载平(305),其中所述服务应用程序包括可以在数据中心内的单独的计算设备上执行的一个或多个组件程序;
从所述服务模型中提取可给予所述一个或多个组件程序的配置设置(310);
启动用于根据所述负载水平来管理所述服务应用程序的实例化过程(315),所述实例化过程包括:
(1)在所述数据中心内部署所述一个或多个组件程序(320);以及
(2)自动在所部署的一个或多个组件程序中传播从所述配置设置导出的公式化值(330);以及
至少暂时将所述公式化值安装到所述一个或多个组件程序中(335),由此提供与所述服务模型一致的服务应用程序的功能。
2.如权利要求1所述的一种或多种计算机存储介质,其特征在于,确定负载水平包括监视主存所述服务应用程序的网站的流量。
3.如权利要求1所述的一种或多种计算机存储介质,其特征在于,所述服务应用程序包括驻留在数据中心上的、由客户机可经由web浏览器应用程序访问的应用服务提供者来维护的软件
4.如权利要求3所述的一种或多种计算机存储介质,其特征在于,所述服务模型部分地根据在所述应用服务提供者和所述客户机之间建立的服务描述合同来生成。
5.如权利要求1所述的一种或多种计算机存储介质,其特征在于,还包括根据所安装的公式化值来执行所述服务应用程序。
6.如权利要求1所述的一种或多种计算机存储介质,其特征在于,所述实例化过程还包括:
确定所部署的一个或多个组件程序中的每一个的状态;
访问变换图,其中所述变换图包括用于将所述配置设置表达为对应于所述一个或多个组件程序中的每一个的状态的公式化值的逻辑;以及
根据所述变换图的逻辑来从所述配置设置导出所述公式化值。
7.一种计算机系统,所述计算机系统用于执行一种通过将配置设置传播到一个或多个组件程序来实例化服务应用程序以由此提升所述服务应用程序的功能的方法,所述计算机系统包括:
第一计算设备(255),其执行支持所述服务应用程序的操作的一个或多个组件程序;以及
第二计算设备(265),其启动用于根据服务模型来实现所述服务应用程序的实例化过程,所述实例化过程包括:
(1)从所述服务模型中的规约中提取配置设置;
(2)将驻留在所述第一计算设备上的一个或多个组件程序标识为可用于实例化;
(3)询问所述一个或多个组件程序中的参数以确定所述一个或多个组件程序中的某一些是否与所述配置设置兼容;
(4)自动在一个或多个兼容的组件程序中传播从所述配置设置导出的公式化值;以及
(5)根据所述公式化值来配置所述一个或多个兼容的组件程序的参数。
8.如权利要求7所述的计算机系统,其特征在于,所述实例化过程还包括:
接收对所述服务模型的规约的修改的指示;以及
从所修改的规约中提取已更新的配置设置。
9.如权利要求8所述的计算机系统,其特征在于,驻留在所述第一计算设备上的一个或多个组件程序根据准许在接收到来自所述已更新的配置设置的公式化值时自动重新配置所述参数的一组规则来开发。
10.如权利要求7所述的计算机系统,其特征在于,所述第二计算设备还被配置成执行支持所述服务应用程序的操作的一个或多个组件程序。
11.如权利要求10所述的计算机系统,其特征在于,所述配置设置包括组件地址,所述组件地址准许驻留在所述第一计算设备上的一个或多个组件程序与驻留在所述第二计算设备上的一个或多个组件程序协调活动。
12.如权利要求7所述的计算机系统,其特征在于,所述配置设置包括算法标识符,所述算法标识符指示所述一个或多个组件程序启动特定算法,以由此影响所述服务应用程序的执行。
13.如权利要求7所述的计算机系统,其特征在于,还包括用于支持所述服务应用程序的操作的一组相关服务,所述服务应用程序由应用服务提供者来管理,而所述一组相关服务由与所述应用服务提供者分开的至少一个实体来管理。
14.如权利要求13所述的计算机系统,其特征在于,所述配置设置包括资源位置,所述资源位置准许所述一个或多个组件程序与位于所述第一计算设备和所述第二计算设备外部的一组相关服务协调活动。
15.如权利要求14所述的计算机系统,其特征在于,所述协调活动包括:
在所述一组相关服务和所述一个或多个组件程序之间交换消息;以及
将所交换的消息与安装在所述一个或多个兼容的组件程序的参数处的公式化值进行比较。
16.如权利要求15所述的计算机系统,其特征在于,所述公式化值包括期望值并且所交换的消息包括用户提供的凭证,其中在实例化后,所述一个或多个组件程序被配置成允许用户在所述用户提供的凭证与所述期望值的对应的期望值匹配时访问所述服务应用程序。
17.如权利要求7所述的计算机系统,其特征在于,所述实例化过程还包括:
从所述一个或多个兼容的组件程序访问结构图,其中所述结构图包括用于定位所述一个或多个兼容的组件程序中的参数的逻辑;以及
根据所述结构图的逻辑来将从所述配置设置导出的公式化值定向到适当的参数。
18.如权利要求7所述的计算机系统,其特征在于,所述第一计算设备和所述第二计算设备包括数据中心,其中所述数据中心包括存储数据的存储器资源,其中所述存储器资源处的数据可由所述一个或多个组件程序访问。
19.如权利要求18所述的计算机系统,其特征在于,所述配置设置包括存储器资源地址,所述存储器资源地址准许所述一个或多个组件程序定位适当的存储器资源以便访问所述数据。
20.一种用于根据实例化方案来配置在数据中心中操作的服务应用程序的组件程序的计算机化方法,所述方法包括:
通过询问服务模型来确定配置设置(310);
访问所述实例化方案,其中所述实例化方案指示部署哪些组件程序以满足所述服务模型,并且其中所述实例化方案提供变换图;
在所述数据中心内的多个计算设备上部署所指示的组件程序(320);
部分地基于所述变换图来将所述配置设置转换成公式化值(325);
自动将所述公式化值分发到所部署的组件程序(330);以及
至少暂时将所分发的公式化值与所部署的组件程序相关联地存储(335)。

说明书全文

背景

通常,软件应用程序被编写成在其配置中允许许多自由度。在利用该特性时,各个用户能够将特定软件应用程序设置成以对每一个用户专用的方式执行。由此,这些结合在单个软件应用程序中的自由度使得该软件应用程序能够产生完全不同的结果。

这种类型的软件应用程序由允许用户经由因特网远程地操纵应用程序的应用服务提供者(ASP)来利用。因为软件应用程序包括自由度,所以用户可向ASP提供性能要求以便手动地编程到应用程序中。此外,大多数软件应用程序包括单独的底层元素,必须单独标识并手动编程这些底层元素以使得软件应用程序可表达性能要求。根据接收到的性能要求来手动编程底层元素的过程是劳动密集的且容易出错。因此,这种用于定制软件应用程序的特别方法将脆弱性引入软件应用程序从ASP的提供中。这些手动编程的缺点在大量用户不断提供并改变其各自的性能要求时恶化。

概述

提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的概念。本概述不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在用于帮助确定所要求保护的主题的范围。

发明的各实施例提供了一种通过提供用于根据服务模型来自动管理服务应用程序中的组件程序的结构(例如,实例化方案)来减少手动编程的缺点的服务建模方法。最初,检测实例化服务应用程序中的组件程序的触发事件。在各实施例中,触发基于对服务应用程序上的负载平的改变的指示(例如,通过监视主存服务应用程序的网站的流量),或者对服务模型中的规约的改变的指示(例如,通过修改在应用程序提供者和客户机之间建立的服务描述合同)。

与检测触发事件相关联地,从服务模型的规约中提取配置设置,其中这些配置设置(例如,组件程序的地址、算法标识符、服务位置存储器资源地址等)用于配置组件程序中的参数。在一种情况下,组件程序被部署在执行服务应用程序的数据中心中的各计算设备处。在另一种情况下,驻留在各计算设备上的先前建立的组件程序被标识为可供实例化。这些所部署和/或所标识的组件程序根据包括以下逻辑步骤的实例化过程来配置:访问图(例如,变换图、结构图)、根据变换图来从配置设置导出公式化值、自动在组件程序中传播公式化值、根据结构图来定位对应于公式化值的参数、以及在适当的参数处安装公式化值。该稳健的实例化过程自动配置组件程序,由此显著地减少手动编程中所固有的缺点(以上所讨论的)。

附图简述

以下参考附图详细描述本发明的各实施例,附图中:

图1是适用于实现本发明的各实施例的示例性计算环境的框图

图2是适用于实现本发明的各实施例的示例性计算系统的框图;

图3是示出根据本发明的一实施例的用于根据服务模型来管理服务应用程序中的组件的方法的流程图

图4和5是示出用于将公式化值安装到组件程序的适当参数中的方法的流程图;以及

图6是示出根据本发明的一实施例的用于响应触发事件的方法的流程图。

详细描述

此处用细节来描述本发明的各实施例的主题以满足法定要求。然而,该描述本身并非旨在限制本专利的范围。相反,发明人设想所要求保护的主题还可结合其他当前或未来技术按照其他方式来具体化,以包括不同的步骤或类似于本文中所描述的步骤的步骤组合。此外,尽管术语“步骤”和/或“框”可在此处用于指示所采用的方法的不同元素,但除非而且仅当明确描述了各个步骤的顺序时,该术语不应被解释为意味着此处公开的各个步骤之中或之间的任何特定顺序。

本发明的各实施例涉及各种方法、系统、以及其上包含计算机可执行指令的计算机存储介质,这些指令在被执行时执行根据本发明的各实施例的用于根据服务模型来自动管理服务应用程序中的组件程序的方法。最初,检测实例化服务应用程序中的组件程序的触发事件。在各实施例中,触发基于对服务应用程序上的负载水平的改变的指示(例如,通过监视主存服务应用程序的网站的流量),或者对服务模型中的规约的改变的指示(例如,通过修改在应用程序提供者和客户机之间建立的服务描述合同)。

与检测触发事件相关联地,从服务模型的规约中提取配置设置,其中这些配置设置(例如,组件程序的地址、算法标识符、服务位置、存储器资源地址等)用于配置组件程序中的参数。在一种情况下,组件程序被部署在执行服务应用程序的数据中心中的各计算设备处。在另一种情况下,驻留在各计算设备上的先前建立的组件程序被标识为可供实例化。这些所部署和/或所标识的组件程序根据包括以下逻辑步骤的实例化过程来配置:访问图(例如,变换图、结构图)、根据变换图来从配置设置导出公式化值、自动在组件程序中传播公式化值、根据结构图来定位对应于公式化值的参数、以及在适当的参数处安装公式化值。

因此,在一方面,本发明的各实施例涉及一种或多种其上包含计算机可执行指令的计算机存储介质,这些指令在被执行时执行用于根据服务模型来管理服务应用程序中的一个或多个组件程序的方法。该方法包括确定服务应用程序上的负载水平,其中该服务应用程序包括可以在数据中心中的单独计算设备上执行的组件程序;从服务模型中提取可给予组件程序的配置设置;以及启动用于根据负载水平来管理服务应用程序的实例化过程。该实例化过程包括在数据中心内部署组件程序,自动在所部署的组件程序中传播从配置设置导出的公式化值,以及至少暂时将公式化值安装到组件程序中,由此提供与服务模型一致的服务应用程序的功能。在各实施例中,该方法还包括根据所安装的公式化值来执行服务应用程序。

在另一方面,本发明的各实施例涉及一种具体化在一个或多个计算机存储介质上的计算机系统,该计算机存储介质上包含有用于执行一种方法的计算机可执行指令,该方法用于通过将配置设置传播到组件程序来实例化服务应用程序以由此提升服务应用程序的功能。该计算机系统包括第一计算设备和第二计算设备。第一计算设备执行支持服务应用程序的操作的组件程序。第二计算设备启动用于根据服务模型来实现服务应用程序的实例化过程。该实例化过程包括从服务模型中的规约中提取配置设置,将驻留在第一计算设备上的组件程序标识为可供实例化,询问组件程序中的参数以确定这些组件程序中的某一些是否与配置设置兼容,自动在兼容的组件程序中传播从配置设置导出的公式化值,以及根据公式化值来配置兼容的组件程序的参数。

在又一方面,本发明的各实施例涉及一种用于根据实例化方案来配置在数据中心中操作的服务应用程序的组件程序的计算机化方法。该计算机化方法包括至少以下步骤:通过询问服务模型来确定配置设置;访问实例化方案,其中该实例化方案指示要部署哪些组件程序以满足服务模型,并且其中该实例化方案提供变换图;在数据中心内的多个计算设备上部署所指示的组件程序;部分地基于变换图来将配置设置转换成公式化值;自动将公式化值分发给所部署的组件程序;以及至少暂时将所分发的公式化值与所部署的组件程序相关联地存储。

在简要描述了本发明的各实施例的概览后,以下描述适于实现本发明的各实施例的示例性操作环境。

泛而参考附图,并且首先具体参考图1,示出了用于实现本发明的各实施例的示例性操作环境,并将其概括地指定为计算设备100。计算设备100只是合适的计算环境的一个示例,并且不旨在对本发明的各实施例的使用范围或功能提出任何限制。也不应该把计算环境100解释为对所示出的任一组件或其组合有任何依赖性或要求。

本发明的各实施例可以在由计算机或诸如个人数据助理或其它手持式设备之类的其它机器执行的计算机代码或机器可使用指令的一般上下文中描述,该机器可使用指令包括诸如程序组件之类的计算机可执行指令。一般而言,包括例程、程序、对象、组件、数据结构等的程序组件指的是执行特定任务或实现特定提取数据类型的代码。本发明的各实施例可以在各种系统配置中实施,这些系统配置包括手持式设备、消费电子产品、通用计算机、专用计算设备等等。本发明也可以在其中任务由通过通信网络链接的远程处理设备执行的分布式计算环境中实施。

继续参考图1,计算设备100包括直接或间接耦合以下设备的总线110:存储器112、一个或多个处理器114、一个或多个呈现组件116、输入/输出(I/O)端口118、I/O组件120、和说明性电源122。总线110可以是一条或多条总线(诸如地址总线数据总线、或其组合)。尽管为了清楚起见用线条示出了图1的各框,但是在实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。例如,可以将诸如显示设备等的呈现组件认为是I/O组件。而且,处理器具有存储器。发明人关于此点认识到,这是本领域的特性,并且重申,图1的图示只是例示可结合本发明的一个或多个实施例来使用的示例性计算设备。诸如“工作站”、“服务器”、“膝上型计算机”、“手持式设备”等分类之间没有区别,它们全部都被认为是在图1的范围之内的并且被称为“计算机”或“计算设备”。

计算设备100通常包括各种计算机可读介质。作为示例而非限制,计算机可读介质可以包括随机存取存储器(RAM);只读存储器(ROM);电可擦除可编程只读存储器(EEPROM);闪存或其它存储器技术;CDROM、数字多功能盘(DVD)或其它光或全息介质;磁带盒、磁带、磁盘存储或其它磁存储设备;或可用于对所需信息进行编码并且可由计算设备100访问的任何其它介质。

存储器112包括易失性和/或非易失性存储器形式的计算机存储介质。存储器可以是可移动的、不可移动的或其组合。示例性硬件设备包括固态存储器、硬盘驱动器、光盘驱动器等。计算设备100包括从诸如存储器112或I/O组件120等各种实体读取数据的一个或多个处理器。呈现组件116向用户或其他设备呈现数据指示。示例性呈现组件包括显示设备、扬声器、打印组件、振动组件等等。I/O端口118允许计算设备100逻辑上耦合至包括I/O组件120的其他设备,其中某些可以是内置的。说明性组件包括话筒、操纵杆、游戏手柄、圆盘式卫星天线、扫描仪、无线设备等等。

现在转向图2,示出了例示根据本发明的一实施例的被配置成根据服务模型来管理服务应用程序210中的组件程序201、202、203和204的计算系统200的框图。本领域普通技术人员将理解和明白,图2所示的计算系统200仅仅是一个合适的计算系统环境的示例,并且不旨在对本发明的各实施例的使用范围或功能提出任何限制。也不应该将计算系统200解释为对其中所示出的任何单个组件或各组件的组合有任何依赖性或要求。此外,尽管为了清楚起见用线条示出了图2的各个框,但是在实际上,各组件的轮廓并不是那样清楚,并且比喻性地来说,线条更精确地将是灰色的和模糊的。

计算系统200包括客户机计算设备215、相关服务提供者220、以及数据中心225,它们全部都经由网络(未示出)彼此通信。网络可包括但不限于一个或多个局域网(LAN)和/或广域网(WAN)。这样的联网环境常见于办公室、企业范围计算机网络、内联网和因特网中。因此,网络不在此进一步描述。

图2所示的客户机计算设备215和相关服务提供者220、以及数据中心225中的每一个都可以是任何类型的计算设备,诸如例如,以上参考图1描述的计算设备100。仅作为示例而非限制,客户机计算设备215和相关服务提供者220中的每一个都可以是个人计算机、台式计算机、膝上型计算机、手持式设备、移动手机、消费电子设备等。在各实施例中,数据中心225可以是服务器、计算设备的集合、或者能够执行服务应用程序210的其他机器。另外,客户机计算设备215还可包括驻留在其上的web浏览器应用程序230,该web浏览器应用程序经由到数据中心225的有线或无线网络路径来访问服务应用程序210。然而,应当注意,本发明的各实施例不限于在这些计算设备上实现,而是可在处于其各实施例的范围内的各种不同类型的计算设备的任一种上实现。

如图2所示,客户机计算设备215被配置成执行web浏览器应用程序230以访问服务应用程序210。服务应用程序210能够以大致直接的方式、经由通信路径235、或通过相关服务提供者220来访问。在各实施例中,通过相关服务提供者220的访问包括向其传递用户提供的凭证240。通常,用户提供的凭证240是登录数据、口令或由客户机提供以满足在相关服务提供者220处实现的安全协议的任何其他信息。进而,相关服务提供者220在消息245中与组件201、202、203和204中的一个或多个交换凭证240。

在各实施例中,相关服务提供者220位于数据中心225的外部并由与维护服务应用程序210的应用服务提供者分开的实体来管理。然而,相关服务提供者220能够通过在其间交换消息245来与组件程序201、202、203和204协调活动。在相关服务提供者220和组件程序201、202、203和204之间协调活动由针对相关服务提供者220的资源位置来促进。这些资源位置通常根据服务模型中的规约来建立。

一般而言,服务模型是提供用于管理服务应用程序210的组件程序201、202、203和204的指令的接口蓝图。因此,服务模型包括将这些管理方面标识为以下内容的规约:在实例化期间采用哪些图;在传播组件程序201、202、203和204期间利用哪些计算设备;组件程序201、202、203和204之间的通信路径246和247位于哪里;以及描述将由数据中心225执行服务应用程序210的特定方式的任何其他信息。在一种情况下,服务模型部分地根据在客户机和应用服务提供者之间建立的服务描述合同来生成。作为服务描述合同的结果,向客户机提供对由应用服务提供者维护的服务应用程序210以及其他软件的访问。

此外,服务模型提供规约中的允许从中提取隐式和显式配置设置的挂钩。在各实施例中,隐式配置设置提供结构信息(例如,组件地址、资源位置、以及存储器资源地址)以便于组件程序201、202、203和204和/或其他组件(例如,相关服务提供者220、存储器资源250)中的每一个之间的交互。另外,隐式配置设置提供用于消费和转换上述组件之间的消息的应用程序编程接口(API),由此允许这些组件和谐地通信。在各实施例中,显式配置设置向组件程序201、202、203和204中的参数提供影响这些组件程序的功能的指令(例如,算法标识符以及其他配置值)。仅仅作为示例,在服务模型中储存用于将客户机登录到服务应用程序210中的专用凭证。服务模型中的挂钩将这些凭证提供给显式配置设置,这些显式配置设置将凭证分发给组件201作为期望值。将这些期望值与在消息245中从相关服务提供者220传递的用户提供的凭证240进行比较。在接收到消息245后,组件201将用户提供的凭证240与期望值进行比较。如果比较结果匹配,则向客户机提供对服务应用程序210的访问。

提供用于执行服务应用程序210等的数据中心225。服务应用程序210包括可针对使用(例如,每小时客户机命中数)或通过修改服务模型来缩放的一组组件程序201、202、203和204。通常,服务应用程序210通过包括许多不同的组件(例如,组件程序201、202、203和204)来表征,这与传统应用程序类似。在一示例性实施例中,服务应用程序210管理不同的组件以使得这些组件一起用作组合的因特网服务。作为示例,服务应用程序210是允许各个客户机在特定网站发表评论的博客服务。因为可能存在全都访问博客服务的数千个客户机,所以部署博客服务用来支持其持续操作的多个组件。这些组件相互协调动作以用作单个应用程序,由此对组件的部署和解散对于客户机是透明的。

尽管已经示出和描述了服务应用程序210的一个实例,但本领域的普通技术人员应理解和明白,多个服务应用程序可以在数据中心225中执行,并且本发明的各实施例不限于所示出和所描述的服务应用程序210。在具有不止一个服务应用程序的实施例中,服务应用程序210和其他服务应用程序(未示出)可以独立地和/或相互协作地操作。在一种情况下,同时在数据中心225上运行的服务应用程序共享组件程序集201、202、203和204。仅仅作为示例,组件程序集201、202、203和204可由新服务应用程序(例如,根据使用要求来重新提供的)来消费,或者在服务应用程序(例如,访问程序组件的多个服务应用程序)之间共享。由此,在各实施例中,数据中心225上的资源提供许多相互依赖的或独立服务应用程序的互操作性

在各实施例中,数据中心225包括各种机器,诸如第一计算设备255和第二计算设备265、以及存储器资源250。计算设备255和265可以是任何类型的计算设备,诸如例如,计算设备100(参见图1)、个人计算机、服务器、计算设备的集合、或者能够执行服务应用程序210的其他机器。另外,计算设备255和265能够存储并执行组件程序201、202、203和204。组件程序201、202、203和204包含由服务应用程序210管理的大量组件程序中的若干组件。在各实施例中,组件程序201、202、203和204根据服务模型中的规约来开发或编写。在一种情况下,组件程序201、202、203和204中的一个或多个根据服务模型中的准许在确定对配置设置的更新已经发生时自动重新配置参数270的一组规则来开发。尽管在图2中描绘并在此处描述了四个组件程序,但本发明的各实施例构想利用任何数量的组件程序来支持服务应用程序210的操作。在一示例性实施例中,组件程序的数量涉及服务应用程序210上的负载水平,其中负载水平爬得越高,所部署的组件程序就越多。

参数270通常驻留在组件程序201、202、203和204上,或者在分别驻留在组件201和204上的元素266和275上。一般而言,参数精细地调整每一个组件在内部作出的决定,由此细化各组件的经协调的执行。参数270在数量和特性方面是示例性的。即,尽管在特定组件程序或元素示出了特定参数,但本发明的各实施例构想零到多个参数驻留在组件程序或元素中的任一个上。

存储器资源250通常驻留在数据中心225上并被配置成存储数据。在各实施例中,可以在存储器资源250中搜索与其相关联地存储的项目中的一个或多个。本领域的普通技术人员可以理解和明白,存储在数据存储250中的数据可以是可配置的,并可包括与服务应用程序210的执行相关的任何信息。这一信息的内容和量决不旨在限制本发明的各实施例的范围。此外,尽管被示为单个、独立组件,但存储器资源250实际上可以是多个数据存储,例如数据库群集。另外,存储在存储器资源250处的数据可由组件程序201、202、203和204访问。在一个实施例中,向配置设置提供准许组件程序201、202、203和204中的一个或多个定位存储器资源250的存储器资源地址或另一适当的存储器分配,以便从中访问数据。

在操作中,服务应用程序210被配置成管理组件程序201、202、203和204。一管理方面涉及在检测到触发事件时建立并配置组件程序201、202、203和204。触发事件警告服务应用程序210在检测到该触发事件时实例化服务应用程序210中的组件程序201、202、203和204。在各实施例中,触发基于对服务应用程序210上的负载水平的改变的指示(例如,通过监视来自一个或多个客户机计算设备215的流量),或者对服务模型中的规约的改变的指示(例如,通过修改在应用服务提供者和客户机之间建立的服务描述合同),如下文中参考图6更全面地讨论的。

与检测触发事件相关联地,从规约和或服务模型的挂钩中提取配置设置280。一般而言,配置设置280促进正确地管理服务应用程序210。在各实施例中,配置设置280可以是隐式或显式配置设置,如以上更全面地讨论的。在特定情况下,配置设置280包括组件程序的地址、算法标识符、服务位置、存储器资源地址、或者用于配置组件程序中的参数的任何其它数据串。

与提取配置设置280相关联地或同时地,为了满足负载,满足已更新的服务模型,或出于涉及服务应用程序210的操作的任何其它原因,建立组件程序201、202、203和204。在一种情况下,建立组件程序201、202、203和204包括在数据中心225中的各计算设备255和265处部署组件程序201、202、203和204。在另一种情况下,建立组件程序201、202、203和204包括将驻留在计算设备255和256上的先前建立的组件程序标识为可供实例化。尽管已经示出建立组件程序201、202、203和204的两种不同的方式,但本领域的普通技术人员应理解和明白,可以利用用于建立组件程序201、202、203和204的其他方法,并且本发明的各实施例不限于此处所示出和描述的那些方式。

这些所部署和/或所标识的组件程序201、202、203和204根据包括以下逻辑步骤的实例化过程来配置:访问图(例如,变换图、结构图)、根据变换图来从配置设置280导出公式化值290、自动在组件程序201、202、203和204中传播公式化值290、根据结构图来定位对应于公式化值290的参数270、以及在适当的参数270处安装公式化值290。在一示例性实施例中,服务应用程序210询问参数270以便在安装公式化值290之前确定组件201、202、203和204中的每一个是否与配置设置280兼容。

现在转向图3,示出了例示根据本发明的一实施例的用于根据服务模型来管理服务应用程序中的组件的总体方法300的流程图。最初,如框305所示,在服务应用程序处接收指示(例如,触发事件)。触发事件参考图6更全面地讨论。通常,该指示警告服务应用程序应建立更多或更少的组件程序以维护该服务应用程序的统一操作。在一示例性实施例中,组件程序的添加和删减对于当前正在访问服务应用程序的客户机是透明的。如框310所示,在询问服务模型中的规约时从挂钩中提取配置设置。如上文中更全面地讨论的,可以提取各种类型的配置设置,诸如隐式和显式配置设置。

如框315所示,启动用于根据触发事件来管理服务应用程序的实例化过程。在各实施例中,实例化过程包括至少以下逻辑步骤:建立组件程序;导出公式化值;自动传播公式化值;以及安装公式化值。具体而言,如框320所示,通过部署(例如,生成新组件程序)或将数据中心内的机器上的现有组件程序标识为可用来建立组件程序。在将现有组件程序标识为可用的示例性实施例中,询问现有组件程序中的参数以确定它们是否与配置设置兼容。因此,这些“兼容”组件程序在传播期间接收公式化值。

在各实施例中,这些组件程序位于数据中心内的一个或多个计算设备处。这种样式的远程部署通过由配置设置提供给组件设备的指令(例如,组件地址)来启用。另外,配置设置包括用于配置某些组件程序处的API的指令,以由此允许每一个组件程序与其他类型的组件程序和组件程序的其他实例、存储器资源、以及远程相关服务提供者(例如,由通信伙伴维护的服务)相协调。

如框325所示,从配置设置导出公式化值。在各实施例中,公式化值根据变换图、所确定的每一个组件程序的状态、或其组合来导出。自动将这些公式化值传播到所部署的组件程序、兼容的组件程序、或其组合,如框330所示。这些步骤(例如,框320、325和330)可以按任何次序或相伴地采取。如框335所示,在组件程序的参数处安装公式化值。在其他实施例中,公式化值被暂时与对应的参数相关联地存储。与安装参数相关联地,根据公式化值来执行服务应用程序,如框340所示。

现在转向图4和5,示出了例示根据本发明的一实施例的用于将公式化值安装到组件程序的适当参数中的方法400和500的流程图。最初,参考图4,由服务应用程序访问图结构,如框410所示。在其他实施例中,结构图由配置设置访问或被存储在配置设置中。如框420所示,根据结构图中的逻辑来定位组件程序中的参数。因此,结构图的逻辑帮助将公式化值定向到适当的参数,由此促进公式化值的正确安装,如框430所示。

参考图5,如框510所示,确定所建立的组件程序中的每一个的状态。在各实施例中,状态一般涉及组件程序的实例或类型,或组件程序的现有配置。如框520所示,访问变换图。在一示例性实施例中,变换图包括允许在进入每一个组件程序的所确定的状态时将配置设置表达为公式化值的逻辑。基于该逻辑,导出对应于组件程序的每一个实例的公式化值。

图6是示出根据本发明的一实施例的用于响应触发事件的方法600的流程图。如框610所示,接收对服务描述合同的修改的指示。如框620所示,确定这些修改是否影响服务模型中的规约。如果该判定指示未产生实质性影响,则维护组件程序的当前配置,如框630所示。如框640所示,监视服务应用程序处的流量。如框650所示,确定是否存在对负载水平的改变。如果该判定指示没有对负载水平的改变或实质性调整,则维护组件程序的当前配置,如框630所示。

然而,如果框620和650的判定指示触发事件已经发生(例如,发生对负载水平的实质性改变,或者对规约的修改已产生实质性影响),则根据服务模型来更新已更新的配置设置,如框660所示。利用服务模型来创建已更新的配置设置在上文中参考图2更全面地讨论。如框670所示,从已更新的配置设置导出公式化值。如框680所示,用所导出的公式化值来重新配置组件程序。在各实施例中,重新配置包括图3中所列出的各步骤。

参考各具体实施例描述了本发明的各实施例,各具体实施例在所有方面都旨在是说明性的而非限制性的。在不背离本发明范围的情况下各替换实施例对本发明的各实施例的所属领域的普通技术人员将变得显而易见。

从前述内容可知,本发明很好地适用于实现前述的所有目的和目标,并且具有对于该系统和方式是显而易见且固有的其他优点。可以理解,特定的特征和子组合是有用的,并且可以在不参考其他特征和子组合的情况下使用。这由权利要求书所构想并在其范围之内。

高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈