一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

控制与可缩放的应用程序的交互的制作方法

2022-06-01 15:45:48 来源:中国专利 TAG:

控制与可缩放的应用程序的交互


背景技术:

1.本发明总体上涉及与可缩放的应用程序的交互,并且更具体地涉及控制与可缩放的应用程序的交互。
2.本发明还涉及一种计算机程序产品,该计算机程序产品包括计算机可读程序代码,该计算机可读程序代码使得系统的处理器或网络的多个处理器能够实施这样的方法。
3.本发明进一步涉及包括至少一个处理器和这种计算机程序产品的计算机系统,其中该至少一个处理器被适配成用于执行该计算机程序产品的计算机可读程序代码。
4.本发明还涉及一种用于控制与可缩放的应用程序的交互的系统。
5.许多传统的计算机应用程序平台使能微服务架构,其中应用程序或应用程序的组件可以独立于系统的其余部分来部署和缩放。这些应用程序平台可以是基于云的(即,用户可经由互联网从云计算提供商的服务器按需获得),并且可进一步使能使用各自递送特定应用程序服务的一个以上的云平台(即,多云应用程序平台)。因此,微服务使得应用程序能够被构造成松散耦合的服务的集合。在传统的微服务架构中,应用程序被分解成不同的较小服务,这提高了架构模块化。
6.对于如上所述的平台的应用程序,工作负荷平衡器通常实施在应用程序的实例(即,副本)前面。工作量平衡器在实例之间路由流量(例如,流量在实例之间连续地分布,使得每个实例接收流量)。
7.使用工作负荷平衡器有利于运行时工作负荷。然而,对于命令(例如,收集踪迹)出现了问题,因为命令被路由到应用程序的实例中的仅一个。传统的多云应用程序平台提供将超文本传输协议(http)请求(即,一个计算机发送到另一计算机以进行通信的信息包)发送到应用程序的特定实例或实现负载平衡器以在应用程序实例之间连续地分布请求的能力。结果,可以分发请求的速率受到限制,并且因此应用程序平台的效率受到影响。
8.例如,从典型的可缩放的应用程序的实例捕获跟踪涉及通过发送对应的http请求来发出启动跟踪的命令。请求经由负载平衡器(例如,路由器部件)路由到应用程序的一个实例。然后识别问题并且发送停止跟踪的命令。然而,停止跟踪的命令可被路由到应用程序的不同实例。在这种情况下,从实例检索跟踪,而无需捕获问题/事件。结果,该问题被识别,但是错误发生在不同于被跟踪的实例的实例上。


技术实现要素:

9.本发明寻求提供一种用于控制与可缩放的应用程序的交互的计算机实现的方法。
10.本发明进一步寻求提供一种计算机程序产品,该计算机程序产品包括用于在由处理单元执行时实现所提出的方法的计算机程序代码。
11.本发明还寻求提供一种被适配成用于执行这个计算机程序代码的处理系统。
12.本发明还寻求提供一种用于控制与可缩放的应用程序的交互的系统。
13.根据本发明的方面,提供了一种计算机实现的方法。该方法包括将接口规范注册到应用程序,其中元数据与接口规范相关联。该方法然后包括基于与应用程序的接口规范
相关联的元数据将请求路由到应用程序的多个实例。该方法然后进一步包括基于与应用程序的接口规范相关联的元数据将来自应用程序的多个实例的一个或多个响应组合以形成聚合响应。
14.根据本发明的又另方面,提供了一种用于控制与可缩放的应用程序的交互的系统。该系统包括注册单元,被配置为将接口规范注册到应用程序,其中,元数据与接口规范相关联。该系统还包括路由单元,被配置为基于与应用程序的接口规范相关联的元数据将请求路由到应用程序的实例。该系统进一步包括组合单元,其被配置为基于与应用程序的接口规范相关联的元数据,将来自应用程序的实例的一个或多个响应组合,以形成聚合响应。
15.根据本发明的另方面,提供了一种用于控制与可缩放的应用程序的交互的计算机程序产品。该计算机程序产品包括计算机可读存储介质,该计算机可读存储介质具有在其内体现的程序指令,这些程序指令可由处理单元执行以使处理单元执行根据所提出的实施例的方法。
16.根据本发明的另一个方面,提供了根据实施例的一种处理系统,该处理系统包括至少一个处理器和计算机程序产品。所述至少一个处理器适于执行计算机程序产品的计算机程序代码。
附图说明
17.现在将参考以下附图仅通过举例来描述本发明的优选实施例,在附图中:
18.图1示出了可以实现说明性实施例的方面的示例性分布式系统的图形表示;
19.图2是其中可以实施说明性实施例的方面的示例系统的框图;
20.图3是用于控制与可缩放的应用程序的交互的计算机实现的方法的流程图;
21.图4是用于控制与可缩放的应用程序的交互的系统的示例性实施例的简化框图;
22.图5是用于控制与可缩放的应用程序的交互的系统的示例性实施例的简化框图;
23.图6示出了根据本发明的实施例的云计算环境;以及
24.图7描绘了根据本发明的实施例的抽象模型层。
具体实施方式
25.应当理解的是,这些图仅是示意性的并且不是按比例绘制的。还应当理解的是,在整个附图中使用相同的附图标记来表示相同或相似的部件。
26.在本技术的上下文中,当本发明的实施例构成方法时,应当理解的是,这样的方法可以是用于由计算机执行的过程,即,可以是计算机可实现的方法。因此,该方法的各个步骤可反映计算机程序的各个部分,例如。一个或多个算法的各个部分。
27.而且,在本技术的上下文中,系统可以是被适配成用于执行本发明的方法的一个或多个实施例的单个设备或分布式设备的集合。例如,系统可以是个人计算机(pc)、服务器或经由诸如局域网、互联网等的网络连接的pc和/或服务器的集合,以协作地执行本发明的方法的至少一个实施例。
28.提出了用于控制与可缩放的应用程序的交互的概念。云计算的上下文中的可缩放性可被视为处理增长或减少的资源以便以有能力的方式满足流量需求的能力。本质上,可
缩放性可提供可根据需要增长或收缩的容量水平。
29.此类概念可以涉及向应用程序注册接口规范的概念,其中,元数据与该接口规范相关联。元数据可以是接口规范上的注释,所述注释由用户手动创建或使用机器学习算法自动生成。开发者或工程师可创建接口规范,包括元数据注释。可基于预期请求的类型(put、get、post等)并入元数据,或如果预期请求未知,那么可包含元数据的基本集合。元数据可提供请求和/或响应的路由(即,协调/管理)应被不同地或以特定方式处理的指示。例如,对于启用对应用程序的跟踪的命令(即,请求)的情况,注释(即,元数据)指示请求应被发送到应用程序的所有实例,而不是仅一个实例。接口规范可在部署时向平台技术(即,多云应用程序平台)注册,并且平台可在应用程序实例之前拥有/托管路由单元(即,路由组件)。以这种方式,请求可以由路由单元分发到由接口规范概述的应用程序的每个对应实例。
30.实施例可以结合接口规范来实现。接口规范还可以被称为接口文档、api(应用程序编程接口)文档、ui(用户接口)规范或swagger文档,并且可以包括用于遵循标准化框架的应用程序的规范或描述。接口规范可以将软件用户接口的细节捕获到书面文档中,并且覆盖终端用户可以经由应用程序执行的所有可能的动作,以及应用程序中的所有视觉、听觉和其他交互元素。因此,接口规范可以是用于应用程序应当如何工作的实现/集成信息的主要来源。除了实现之外,接口规范可以考虑可用性、本地化和演示限制。一般而言,要求规范的目标可以是描述产品(即,应用程序)能够做什么,而接口规范可以详述这些要求如何在实践中实现。例如,文档(或规范)是用于描述、产生、消费和可视化restful(代表性状态转移)网络服务(即,应用程序)和文档化restful api的机器可读接口文件的规范。是nutraclick,llc的注册商标。表述性状态转移是定义将用于创建网络服务的一组约束的软件架构样式。符合rest架构风格的网络服务(即restful网络服务)提供互联网上计算机系统之间的互操作性。restful api是使用http请求以使得两个或更多个应用程序能够彼此通信的应用程序编程接口。
31.所提出的实施例可采用通过restful接口调用命令(即,请求)以被路由到应用程序的所有实例(或实例的选择)和由应用程序的所有实例(或实例的选择)完成的概念。如何调用命令可基于与应用程序的接口规范相关联的元数据。
32.因此,发明人提出提供路由单元(即,路由组件)。这样的路由单元可被配置成基于与应用程序的接口规范相关联的元数据将请求路由到应用程序的实例。当做出请求并将其提供给应用程序时,可以首先由路由单元处理该请求,其中可以分析注册的接口规范,并且随后根据相关联的元数据路由该请求。相应的响应然后可以由路由单元高速缓存(即,存储),并且然后以由应用程序编程接口定义的方式返回到调用应用程序。在进行和聚集响应时,在临时错误的情况下,路由单元可以配置有适当的重试逻辑。
33.实施例因此可以促进对可缩放的应用程序的请求的管理或路由和协调。可基于与用于应用程序的接口规范(即,api文档)相关联的元数据将请求路由到运行的应用程序的所有实例。在一些实施例中,请求可被路由到应用程序的实例的预定义选择。基于相关联的元数据,随后可从应用程序实例聚集响应以形成客户端的单个响应。
34.在一些实施例中,用于该应用程序的接口规范可以包括与同该应用程序相关联的应用程序接口的交互和/或集成有关的指令。以这种方式,可以捕获软件用户接口的细节
(例如,应用程序接口的实施信息),从而使将与应用程序接口交互和/或集成的机器/用户能够具有对规范的改进的访问。因此,与应用程序交互的机器/用户可以访问终端用户在实现应用程序时可以执行的所有可能动作,以及所有视觉、听觉和其他交互元素。结果,可以改善应用程序和交互机器/用户之间的通信的容易性。
35.在一些实施例中,元数据可以包括与请求和/或一个或多个响应的交互有关的指令。以此方式,关于应如何处置请求和/或响应的信息可提供到路由器部件(例如,负载平衡器)。照此,可提供关于管理请求和/或响应向应用程序的实例的路由的清楚指令,这可提高请求/响应协调的效率。进一步,这可使得特定请求能够被分发到应用程序的多个实例。这可以包括应用程序的所有实例或应用程序的实例的一部分/选择。结果,由于忽略或错过应用程序的特定实例而不完成请求的风险可以高效的方式降低。
36.在所提出的实施例中,向应用程序注册接口规范可以包括创建元数据,然后将创建的元数据与接口规范相关联。然后,该步骤可以包括向应用程序注册接口规范。以此方式,元数据可以由用户手动创建或者它可以使用机器学习算法自动生成。因此,与应用程序的交互和/或集成有关的信息可以(例如,由用户)为预定义目的特别定制。这可以实现管理与应用程序的交互的改进的控制和协调。
37.在所提出的实施例中,将该请求路由到该应用程序的多个实例可包括分析针对该应用程序的注册的接口规范。然后,该步骤可以包括识别与所分析的接口规范相关联的元数据。该步骤可以进一步包括基于与所分析的接口规范相关联的识别的元数据将请求路由到应用程序的实例。以此方式,可改进对请求的路由的管理,这可实现在协调与可缩放的应用程序的交互时的改进的控制简易性。因此,每个请求的路由可根据用户定义的对应用程序的要求而定制,这可改善接口规范的通用性和可用性。因此,通过评估每个实例来智能地分布跨实例的流量的需求可被减轻,这可减少所需的处理时间,从而改善效率。
38.在所提出的实施例中,组合来自所述应用程序的所述实例的所述一个或多个响应以形成聚集响应可以包括接收来自所述应用程序的所述实例的所述一个或多个响应,其中,所述一个或多个响应与所述路由的请求相关联。然后,该步骤可以包括存储一个或多个接收的响应,然后组合一个或多个存储的响应以形成聚合响应。以这种方式,所得到的聚合响应可以以改善的清晰度向用户提供与一个或多个组合响应有关的信息。例如,聚合响应可以包括与针对它被路由到的应用程序的每个实例的请求的成功程度有关的信息。以此方式,用户可以具有关于应用程序和多云应用程序平台之间的交互和/或集成的改善的可见性。因此,可以以改善的效率和可靠性来识别并解决任何可能的错误或请求失败。由此,降低了忽略与应用程序的交互中的错误的风险。
39.在一些实施例中,该请求可以包括有待对该应用程序的实例执行的命令。命令的示例包括但不限于识别和/或解决应用程序的实例中的错误的命令(例如。trace http请求),接收状态通知的命令,所述状态通知包括应用程序的实例的状态(例如,status http请求),从应用程序的实例检索信息的命令(例如get http请求)、向应用程序发送数据的命令,例如,客户信息、文件上传等。(例如,post http请求),去除预定义信息的命令(例如,delete http请求),用于建立与应用程序的通信流的命令(例如connect http请求),描述应用程序的通信选项的命令(例如.options http请求)。以此方式,与应用程序及其实例的交互的多功能性可得到改进,这可实现对与应用程序的交互的改进的管理。
40.在一些实施例中,该应用程序可以位于可缩放云环境中。以这种方式,由元数据提供的关于如何处理请求和/或响应的指令可以基于应用程序的可以根据需要增长或收缩的计划容量水平来生成。结果,可减轻由于增加的流量而导致的应用程序崩溃(或甚至减慢)的风险。
41.图1描绘了其中可以实施说明性实施例的方面的示例性分布式系统的图形表示。分布式系统100可包括其中可实现说明性实施例的各方面的计算机网络。分布式系统100包含至少一个网络102,网络102是用于在分布式数据处理系统100内连接在一起的不同设备和计算机之间提供通信链路的介质。网络102可以包括诸如有线、无线通信链路或光纤电缆之类的连接。
42.在所描绘的示例中,第一服务器104和第二服务器106与存储单元108连接至网络102。此外,客户端110、112和114也连接到网络102。客户端110、112和114可以是例如个人计算机、网络计算机等。在所描绘的示例中,第一服务器104向客户端110、112和114提供诸如引导文件、操作系统映像和应用程序之类的数据。在所描绘的示例中,客户端110、112和114是第一服务器104的客户端。分布式处理系统100可包括额外的服务器、客户端和未示出的其他设备。
43.在所描绘的示例中,分布式系统100是互联网,其中网络102表示使用传输控制协议/互联网协议(tcp/ip)协议组来彼此通信的网络和网关的全球集合。互联网的核心是主节点或主计算机之间的高速数据通信线路的主干,由数千个路由数据和消息的商业、政府、教育和其他计算机系统组成。分布式系统100还可被实现为包括多个不同类型的网络,诸如例如内联网、局域网(lan)、广域网(wan)等。如上所述,图1旨在作为实例,而不是作为对本发明的不同实施例的架构限制,并且因此,图1中所示的特定元件不应当被认为是关于其中可以实现本发明的说明性实施例的环境的限制。
44.图2是示例系统200的框图,其中可以实现说明性实施例的各方面。系统200是计算机(诸如图1中的客户端110)的示例,其中可以定位实现本发明的说明性实施例的处理的计算机可用代码或指令。例如,系统200可以被配置为实现根据实施例的注册单元、路由单元和组合单元。
45.在所描绘的示例中,系统200采用集线器架构,该集线器架构包括北桥和存储器控制器中心(nb/mch)202以及南桥和输入/输出(i/o)控制器中心(sb/ich)204。处理单元206、主存储器208和图形处理器210连接到nb/mch202。图形处理器210可以通过加速图形端口(agp)连接到nb/mch202。
46.在所描绘的示例中,局域网(lan)适配器212连接至sb/ich204。音频适配器216、键盘和鼠标适配器220、调制解调器222、只读存储器(rom)224、硬盘驱动器(hdd)226、cd-rom驱动器230、通用串行总线(usb)端口和其他通信端口232、以及pci/pcie设备234通过第一总线238和第二总线240连接到sb/ich204。pci/pcie设备可以包括例如以太网适配器、插入卡和用于笔记本计算机的pc卡。pci使用卡总线控制器,而pcie不使用。rom 224可以是例如闪存基本输入/输出系统(bios)。
47.hdd226和cd-rom驱动器230通过第二总线240连接至sb/ich204。hdd226和cd-rom驱动器230可以使用例如集成驱动电子设备(ide)或串行高级技术附件(sata)接口。超级i/o(sio)设备236可以连接到sb/ich204。
48.操作系统运行在处理单元206上。操作系统协调并提供对图2中的系统200内的各个组件的控制。作为客户端,操作系统可以是可商购的操作系统。面向对象的编程系统(诸如编程系统)可以结合操作系统运行并且提供从在系统200上执行的程序或应用程序对操作系统的调用。是oracle或其子公司的注册商标。
49.作为服务器,系统200可以是例如运行高级交互执行操作系统或操作系统的ibm
tm
eserver
tm
system p
tm
计算机系统。系统200可以是对称多处理器(smp)系统,其包括处理单元206中的多个处理器。可替代地,可以采用单个处理器系统。ibm
tm
、eserver
tm
和systemp
tm
是国际商业机器公司的商标。是国际商业机器公司的注册商标。是linus torvalds的注册商标。
50.操作系统、编程系统和应用程序或程序的指令位于诸如hdd226的存储设备上,并且可以被加载到主存储器208中以供处理单元206执行。类似地,根据实施例的一个或多个消息处理程序可适于由存储设备和/或主存储器208存储。
51.本发明的说明性实施例的过程可由处理单元206使用计算机可用程序代码来执行,计算机可用程序代码可位于存储器中,例如主存储器208、rom 224或一个或多个外围装置226和230中。
52.总线系统(诸如图2所示的第一总线238或第二总线240)可包括一条或多条总线。当然,总线系统可以使用在附接到结构或架构的不同组件或设备之间提供数据传送的任何类型的通信结构或架构来实现。通信单元(诸如图2的调制解调器222或网络适配器212)可包括用于发送和接收数据的一个或多个设备。存储器可以是例如主存储器208、rom 224或诸如在图2中的nb/mch202中找到的高速缓存。
53.本领域普通技术人员将理解,图1和2中的硬件可以取决于实现方式而变化。除了或代替图1和2中描绘的硬件,可使用其他内部硬件或外围设备,例如快闪存储器、等效非易失性存储器或光盘驱动器等。此外,说明性的实施例的过程可以应用于除了前面提到的系统之外的多处理器数据处理系统,而不偏离本发明的精神和范围。
54.此外,系统200可以采取多个不同数据处理系统中的任的形式,包括客户端计算装置、服务器计算装置、平板计算机、膝上型计算机、电话或其他通信装置、个人数字助理(pda)等。在一些说明性示例中,系统200可以例如是配置有闪存的便携式计算设备,以提供用于存储操作系统文件和/或用户生成的数据的非易失性存储器。因此,系统200可以本质上是任何已知的或以后开发的数据处理系统,而没有架构限制。
55.现在参见图3,描绘了用于控制与可缩放的应用程序的交互的计算机实现的方法的流程图。步骤310包括向应用程序注册接口规范,其中,元数据与接口规范相关联。例如,应用程序在预定义位置具有相关联的文档(即,接口规格)。在该示例中,应用程序被部署到提供路由和缩放能力(其已经被广泛地已知和可用)的开源、多云应用程序平台。在实施例中,应用程序的接口规范包括与同应用程序相关联的应用程序接口的交互和/或集成有关的指令。例如,接口规范包括文档和/或api文档。
56.在一个实施例中,元数据包括与请求和/或一个或多个响应的交互有关的指令。在该实例中,接口规范(即,文档)包括在/v1/starttrace api上的元数据,以指示应将请求扇出到所有实例(即,同时分配给所有实例),并且随后应聚集响应。与接口规范相
关联的元数据的示例如下:
[0057][0058][0059]
在该实例中,api文档(即,接口规范)向应用程序平台注册(即,关联或链接),具体地,向应用程序平台的路由器部件注册。
[0060]
作为示例,向应用程序注册接口规范包括步骤312、314和316。步骤312包括创建元数据。步骤314包括将所创建的元数据与接口规范相关联。步骤316包括向应用程序注册接口规范。步骤320包括基于与应用程序的接口规范相关联的元数据将请求路由到应用程序的实例。在实施例中,将请求路由到应用程序的实例包括步骤322、324和326。步骤322包括分析应用程序的注册的接口规范。步骤324包括识别与所分析的接口规范相关联的元数据。步骤326基于所识别的与分析的接口规范相关联的元数据将请求路由到应用程序的实例。
[0061]
在该实例中,在应用程序中识别问题并且需要跟踪。作为响应,用户经由restful api(代表性状态传输应用程序接口)发出命令(即,请求)以开始跟踪。restful api是使用http请求来get、put、post和delete数据的应用程序接口。请求(即,命令)被发送到应用程序平台的路由组件,在那里检查文档(即,接口规范)。结果,如元数据描述的,请求被路由到应用程序的所有实例,而不是仅仅路由到一个实例。
[0062]
在实施例中,请求包括待在应用程序的实例上执行的命令。在该实例中,使用开始跟踪的请求(即,命令)(/v1/starttrace),然而,可实现其他请求。这样的请求的示例包括但不限于:停止跟踪请求(/v1/stoptrace)、从每个实例返回状态对象的组合的请求(get/v1/status)、以及返回与每个实例是否准备好有关的确认的请求(get/v1/已经,其中,如果所有实例准备好,则返回204http状态代码,并且如果一个实例尚未准备好,则返回503http状态代码)。
[0063]
步骤330包括基于与应用程序的接口规范相关联的元数据将来自应用程序的实例的一个或多个响应组合以形成聚合响应。
[0064]
在一个实施例中,组合来自应用程序的实例的一个或多个响应以形成聚合响应包
括步骤332、334和336。步骤332包括从应用程序的多个实例接收一个或多个响应,其中一个或多个响应与路由的请求相关联。步骤334包括存储一个或多个接收到的响应。步骤336包括将一个或多个存储的响应组合以形成聚合响应。
[0065]
在该示例中,应用程序的每个实例接收请求(即,启动跟踪的命令)。每个实例成功地处理请求并发送http 200 ok成功状态响应代码(即,响应)以确认请求已经成功并且跟踪已经开始。应用程序平台的路由器部件(即,路由单元)等待来自请求被路由到的所有实例的响应,然后将接收到的响应中的每一个聚集(即,组合)成客户端应用程序的单个响应(即,聚集响应)。例如,所有响应被聚集成阵列。如果所有响应相同(例如,每个响应包括http状态代码204,即,应用程序/服务器已经成功地满足请求并且在响应有效载荷主体中没有要发送的附加内容),则单个聚集响应包括单个http状态代码204。在另一示例中,如果一个响应包括http状态代码500(即,应用程序/服务器遇到阻止其履行该请求的非预期条件)并且其余响应包括http状态代码204,则单个聚集响应包括http状态代码500和指示应用程序实例的标识符。在一个示例中,路由器部件(即,路由单元)在创建和聚集响应时在临时错误的情况下配置有适当的重试逻辑。聚合响应的实例如下:
[0066]
http status code:200
[0067]
[
[0068]
{"tracing started for server instance 0001"},
[0069]
{"tracing started for server instance 0002"},
[0070]
{"tracing started for server instance 0003"},
[0071]
{"tracing started for server instance 0004"},
[0072]
{"tracing started for server instance 0005"}
[0073]
]
[0074]
在这样的示例中,跟踪已经在应用程序的所有实例上开始。一旦跟踪完成,就可以检索跟踪日志并且可以捕获事件。
[0075]
在实施例中,应用程序位于可缩放云环境中。
[0076]
现在参见图4,描绘了用于控制与可缩放的应用程序的交互的系统的示例性实施例的简化框图。
[0077]
该系统包括注册单元410,被配置为将接口规范注册到应用程序,其中,元数据与接口规范相关联。该系统还包括路由单元420,被配置为基于与用于应用程序的接口规范相关联的元数据将请求路由到应用程序的实例。该系统进一步包括组合单元430,其被配置为基于与应用程序的接口规范相关联的元数据,组合来自应用程序的实例的一个或多个响应,以形成聚合响应。
[0078]
在实施例中,应用程序的接口规范包括与同应用程序相关联的应用程序接口的交互和/或集成有关的指令。
[0079]
在一个实施例中,元数据包括与请求和/或一个或多个响应的交互有关的指令。
[0080]
在实施例中,注册单元410包括创建单元412,该创建单元412被配置为创建元数据并将所创建的元数据与接口规范相关联。注册单元410被配置为将所述接口规范注册到所述应用程序中。
[0081]
在实施例中,路由单元420包括处理单元422,处理单元422被配置为分析应用程序
的注册的接口规范。路由单元420还包括识别单元424,该识别单元424被配置成识别与分析的接口规范相关联的元数据。路由单元420还被配置为基于与分析的接口规范相关联的识别的元数据将请求路由到应用程序的实例。
[0082]
在一个实施例中,组合单元430包括接收单元432,接收单元432被配置为从应用程序的实例接收一个或多个响应,其中一个或多个响应与路由的请求相关联。组合单元430还包括存储单元434,存储单元434被配置为存储接收到的一个或多个响应。组合单元430还被配置为组合一个或多个存储的响应以形成聚合响应。
[0083]
在实施例中,请求包括待在应用程序的实例上执行的命令。
[0084]
在实施例中,应用程序位于可缩放的云环境中。
[0085]
作为另一示例,如图5所示,实施例可包括计算机系统70,计算机系统70可形成联网系统7的一部分。例如,路由单元可以由计算机系统70实施。计算机系统/服务器70的组件可以包括但不限于一个或多个处理布置,例如包括处理器或处理单元71、系统存储器74和将不同系统组件(包括系统存储器74)耦合到处理单元71的总线90。
[0086]
系统存储器74可包括易失性存储器形式的计算机系统可读介质,诸如随机存取存储器(ram)75和/或高速缓存存储器76。计算机系统/服务器70还可以包括其他可移动/不可移动、易失性/非易失性计算机系统存储介质。在这样的情况下,每一个可以通过一个或多个数据介质接口连接到总线90。存储器74可以包括至少一个程序产品,该程序产品具有被配置为执行所提出的实施例的功能的一组(例如,至少一个)程序模块。例如,存储器74可包括计算机程序产品,该计算机程序产品具有可由处理单元71执行的程序以使得系统执行根据所提出的实施例的用于控制与可缩放的应用程序的交互的方法。
[0087]
具有一组(至少)程序模块79的程序/实用程序78可以存储在存储器74中。程序模块79通常执行所提出的实施例的用于控制与可缩放的应用程序的交互的功能和/或方法。
[0088]
计算机系统/服务器70还可以与一个或多个外部设备80(例如键盘、定点设备、显示器85等),和/或使计算机系统/服务器70能够与一个或多个其他计算设备通信的任何设备(例如,网卡、调制解调器等)通信。这种通信可经由输入/输出(i/o)接口72发生。而且,计算机系统/服务器70可经由网络适配器73与诸如局域网(lan)、通用广域网(wan)和/或公共网络(例如,互联网)的一个或多个网络通信(例如,以将重新创建的内容传送给系统或用户)。
[0089]
在本技术的上下文中,当本发明的实施例构成方法时,应当理解的是,这样的方法是用于由计算机执行的过程,即是一种计算机可实现的方法。因此,该方法的各个步骤反映计算机程序(例如。一个或多个算法的各个部分)的各个部分。
[0090]
现在参见图6,示出了说明性云计算环境600。如图所示,云计算环境600包括由云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点610,本地计算设备诸如例如个人数字助理(pda)或蜂窝电话640a、台式计算机640b、膝上型计算机640c和/或汽车计算机系统640n。云计算节点610可彼此通信。在一个或多个网络(诸如如上所述的私有云、社区云、公共云或混合云、或其组合)中,它们可以物理地或虚拟地分组(未示出)。这允许云计算环境600提供基础架构、平台和/或软件作为云消费者不需要为其维护本地计算设备上的资源的服务。应当理解,图6中所示的计算设备640a-n的类型仅旨在是说明性的,并且云计算节点610和云计算环境600可通过任何类型的网络和/或网络可寻址连接(例如,使
用网络浏览器)与任何类型的计算机化设备通信。
[0091]
现在参见图7,示出了由云计算环境600(如图6所示)提供的一组功能抽象层。应当事先理解,图7中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描述,提供以下层和对应功能:
[0092]
硬件和软件层760包括硬件和软件组件。硬件组件的示例包括:主框架761;基于risc(精简指令集计算机)架构的服务器762;服务器763;刀片服务器764;存储设备765;以及网络和网络组件766。在一些实施例中,软件组件包括网络应用程序服务器软件767和数据库软件768。
[0093]
虚拟化层770提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器771;虚拟存储772,例如如图5中所示的系统存储器74;虚拟网络773,包括虚拟专用网络;虚拟应用程序和操作系统774;以及虚拟客户端775。
[0094]
在示例中,管理层780可以提供以下描述的功能。资源供应781提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价782在云计算环境内利用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在示例中,这些资源可以包括应用程序软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户783为消费者和系统管理员提供对云计算环境的访问。服务水平管理784提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(sla)规划和履行685提供云计算资源的预安排和采购,根据该sla预期该云计算资源的未来要求。
[0095]
工作负载层790提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航791;软件开发和生命周期管理792;虚拟教室教育递送793;数据分析处理794;事务处理795;以及日志文件管理程序796。日志程序796可控制与可缩放的应用程序的交互。
[0096]
本发明可以是一种系统、方法、和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
[0097]
计算机可读存储介质可以是能够保留和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体的示例的非穷尽列表包括以下:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom),可擦可编程只读存储器(eprom或闪存)、存储级内存(scm)、静态随机存取存储器(sram)、便携式光盘只读存储器(cd-rom),数字通用盘(dvd)、记忆棒、软盘、具有记录在其上的指令的诸如穿孔卡或凹槽中的凸出结构的机械编码设备、以及上述的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
[0098]
在此所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载至对应的计算/处理设备或下载至外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收
来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
[0099]
用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序设计语言(如smaltalk、c 等)和常规的过程式程序设计语言(如“c”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务提供商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
[0100]
在此参照根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述本发明的多个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
[0101]
这些计算机可读程序指令可以被提供给通用计算机、专用计算机、或其他可编程数据处理装置的处理器以产生机器,这样使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现在流程图和/或框图的或多个框中指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
[0102]
这些计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置、或其他设备上,以便使得在该计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的过程,从而使得在该计算机、其他可编程装置或其他设备上执行的这些指令实现流程图和/或框图的或多个框中所指定的功能/动作。
[0103]
附图中的流程图和框图示出了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个框可表示指令的模块、段或部分,其包括用于实现指定的逻辑功能的一个或多个可执行指令。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
[0104]
已经出于说明的目的呈现了本发明的各个实施例的描述,但并不旨在是详尽的或限于所公开的实施例。在不脱离所描述的实施例的范围和精神的情况下,许多修改和变化对本领域普通技术人员将是显而易见的。这里使用的术语被选择来最好地解释实施例的原理、实际应用程序或对在市场中找到的技术的技术改进,或者使得本领域普通技术人员能
够理解这里公开的实施例。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献