自适应服务超时的制作方法

文档序号:8323922阅读:389来源:国知局
自适应服务超时的制作方法
【专利说明】自适应服务超时
[0001] 以下申请要求标题为"Adaptive Service Timeouts (自适应服务超时)"且于 2012年9月18日提交的具有申请号13/622, 094的美国专利申请的优先权和权益,所述专 利申请以引用的方式全文并入本文。
[0002] 发明背景
[0003] 超时可防止在处理高延迟服务调用中过度使用系统资源。具体而言,当处理超时 时,它们不再消耗系统资源。
[0004] 附图简述
[0005] 参考以下附图可更好地理解本公开的许多方面。附图中的组件未必按照比例绘 制,而是强调清楚地图示本公开的原理。再者,在附图中,贯穿若干视图的相同的附图标记 指代对应部件。
[0006] 图1是根据本公开的各种实施方案的网络环境的图视。
[0007] 图2是根据本公开的各种实施方案的图示被实施为在图1的网络环境中的计算环 境中执行的超时管理应用程序的部分的功能的一个实例的流程图。
[0008] 图3是根据本公开的各种实施方案的图示被实施为在图1的网络环境中的计算环 境中执行的超时管理应用程序的部分的服务依赖性功能的一个实例的流程图。
[0009] 图4是根据本公开的各种实施方案的提供在图1的网络环境中采用的计算环境的 一个实例图示的示意性框图。
【具体实施方式】
[0010] 服务导向式架构执行超时以在进行调用高延迟服务时防止过度使用系统资源。这 样防止高延迟服务垄断或滥用系统资源,从而以竞争相同系统资源的其它服务为代价来解 析其调用。超时通常是预设值,其相对于被执行的服务和在所述被执行的服务上调用的服 务被定义。这阻碍超时值适用于各种系统状态。例如,在低的总体系统使用时期中,可增加 用于服务的超时。这将允许服务有更多时间访问系统资源以解析它们的调用。这还降低服 务调用失败的次数,而不影响其它服务。作为另一实例,在高的系统资源使用率时期,可减 少用于高延迟的超时。这可导致有关该服务的更多次失败,而将允许其它服务完成它们的 服务调用。
[0011] 根据各种实施方案,超时管理应用程序允许服务的超时被重新定义,以便适应其 中它们被实施的环境的状态。可基于服务延迟和使用中的系统资源的量来增加或减少超 时。超时管理应用程序在修改超时值时还可考虑服务依赖性。例如,父服务可调用若干子 服务,并且父服务和子服务二者具有它们自己的超时。可修改子服务或父服务超时,以确保 超时满足相对彼此的预定义标准。这些依赖性还可影响哪个服务被修改以便适应系统使用 量。超时管理应用程序可执行对修改独立服务的偏好,以使受影响的服务的数量最小化。在 另一实例中,超时管理应用程序可能想要修改许多其它服务依赖的服务的超时,以确保使 服务可用性最大化。
[0012] 此外,超时管理应用程序的适应能力可考虑与所述服务相关联的各个层或优先 级,以确保高优先级或层服务具有最大化的可用性。在以下讨论中,提供了系统及其组件的 一般描述,紧接着提供对系统及其组件的操作的讨论。
[0013] 参考图1,示出了根据各种实施方案的网络环境100。网络环境100包括计算环 境101和客户端104,它们经由网络107彼此数据通信。网络107包括,例如,互联网、内联 网、外联网、广域网(WAN)、局域网(LAN)、有线网络、无线网络或其它合适的网络等、或两个 或更多个这种网络的任何组合。
[0014] 计算环境101可包括,例如,提供计算能力的服务器计算机或任何其它系统。替代 地,计算环境101可采用可被用于布置成(例如)一个或多个服务器组或计算机组或其它 布置的多个计算设备。这种计算设备可位于单个安装中或可分布在许多不同的地理位置 中。例如,计算环境101可包括多个计算设备,其一起包括云计算资源、网格计算资源和/ 或任何其它分布式计算布置。在一些情况下,计算环境101可对应于弹性计算资源,其中处 理、网络、存储或其它计算相关的资源的分配容量可随时间变化。
[0015] 根据各种实施方案,可在计算环境101中执行各种应用程序和/或其它功能。此 外,将各种数据存储于对计算环境101可访问的数据存储111中。如可理解,数据存储111 可表示多个数据存储111。存储于数据存储111中的数据(例如)与下文描述的各种应用 程序和/或功能实体的操作相关联。
[0016] 在计算环境101上执行的组件例如包括超时管理应用程序114、多个服务117和 本文中未详细讨论的其它应用程序、服务、进程、系统、引擎或功能。执行超时管理应用程序 114以基于计算环境101的状态而修改对应于相应的一对被执行服务117的超时121。
[0017] 服务117包括响应于调用而执行一些动作或返回一些数据的功能。服务117可 包括服务网络页面、从数据存储读取数据或将数据存储于数据存储中、执行数据转换、与 其它应用程序通信、管理网络流量的功能或一些其它功能。服务117可在表述性状态转移 (RESTful)架构中或一些其它架构中体现。服务117可能需要执行一个或多个子服务117 以完成对服务117的调用。服务117可被执行并调用以促进处理客户端104发送的请求 122,从而生成响应123或用于其它用途。
[0018] 在计算环境101中执行的服务117中的每一个与至少一个超时121相关联。被调 用服务117可具有许多超时121,每个超时对应于调用被调用服务117的不同服务117。超 时121定义最大的时间阈值以完成对服务117的调用。如果服务117在超时121内无法完 成调用,那么服务117向调用源返回错误。
[0019] 服务117中的每一个还对应于指示其需要用来完成对服务117中的对应一个的调 用的时间的延迟。所述延迟可能受计算环境101中相对于系统资源的总容量的被使用系统 资源的量影响。例如,当处理许多服务117调用或当被调用的服务117计算量太大时,计算 环境101可具有大量被使用的系统资源,导致在一些服务117中增加延迟。
[0020] 存储于数据存储111中的数据包括(例如)数据体现服务层124、服务优先级列表 127、依赖性模型131和潜在的其它数据。服务层124表示对被执行的服务117分成一个或 多个组。所述分组可能相互排斥或允许服务117属于多个组。所述分组可能自行排列或排 序成一些层级。所述分组还可基于被包括服务117的一些质量评定,诸如优先级。
[0021] 服务优先级列表127基于被执行的服务117的可用性优先级来体现它们的排列。 服务优先级列表127可包括被执行的服务117或其子集的全部。可根据一个或多个预定义 条件来存储多个服务优先级列表127用于检索。
[0022] 依赖性模型131体现被执行的服务117之间的关系和依赖性。依赖性模型131的 结构可体现为树形、一些其它非周期性有向图或另一种数据结构。依赖性模型131中表示 服务117的节点可根据在执行期间调用其它服务117的服务117而与父节点或子节点相 关。依赖性模型131可体现完全连接图或可允许独立节点。
[0023] 客户端104表示可耦接到网络107的多个客户端设备。客户端104可包括(例如) 基于处理器的系统,诸如计算机系统。这种计算机系统可体现为以下形式:台式计算机、膝 上型计算机、个人数字助理、蜂窝电话、智能电话、机顶盒、音乐播放器、便携式网络浏览器、 平板计算机系统、游戏机、电子书阅读器或具有相似能力的其它设备。
[0024] 客户端104可被配置来执行各种应用程序,诸如客户端应用程序142和/或其它 应用程序。例如,可在客户端104中执行客户端应用程序142,以访问由计算环境101和/ 或其它服务器提供服务的网络内容。客户端应用程序142可(例如)对应于浏览器、移动 应用程序等。客户端104可被配置来执行客户端应用程序142以外的应用程序,诸如(例 如)浏览器、移动应用程序、电子邮件应用程序、社交网络应用程序和/或其它应用程序。
[0025] 客户端104可将请求122传送到计算环境101以获取响应123。这些请求122可 包括对将由计算环境101服务的网页的请求、对将在计算环境101上执行的一些功能或应 用程序的请求或另一类型的请求。所述请求可通过超文本传输协议(HTTP)、文件传输协议 (FTP)、简单对象访问协议(SOAP)、简单邮件传输协议(SMTP)、通过另一种协议或通过一些 其它途径进行传送。传送请求122可由客户端应用程序142促成。例如,对网页的请求122 可由浏览器客户端应用程序142促成。还可执行其它客户端应用程序142,以促进请求122 到计算环境101的传送。
[0026] 接下来,提供了网络环境100的各个组件的操作的一般描述。首先,计算环境101 执行一个或多个服务117,以便促进对由客户端104传送的请求122的处理和响应123的 生成。超时管理应用程序114获取对应于被执行的服务117中的每一个的延迟信息。在一 些实施方案中,可从监测进程获取延迟数据。例如,服务117可将延迟数据报告给对监测进 程可访问的日志,所述监测进程随后聚合数据用于传送到超时管理应用程序114。服务117 可以预定义间隔或响应于一些事件将延迟数据传送到日志。延迟数据可包括在传送到日志 时的最近延迟,或在一段时间内聚合的延迟数据。延迟数据还可通过另一种途径传送到日 )'、O
[0027] 在另一实施方案中,可通过查询服务117的功能来获取延迟数据。例如,服务117 可包括维护延迟数据的功能和响应于对服务117的特定调用而返回延迟数据的功能。延迟 数据还可通过根据来自调用服务117的实体的数据来确定延迟而获取。超时管理应用程序 114还可使用其它技术来获取延迟数据。
[0028] 超时管理应用程序114随后确定在计算环境101中相对于计算环境101的总容量 的被使用系统资源的量。系统资源的量可根据所获取的延迟数据以及其它数据、信息和日 志来确定。超时管理应用程序114可随后响应于与被使用
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1