当前位置: 首页 > 专利查询>苹果公司专利>正文

由计算设备提供的服务的健康状况监视制造技术

技术编号:21485086 阅读:33 留言:0更新日期:2019-06-29 06:36
本发明专利技术题为“由计算设备提供的服务的健康状况监视”。本专利申请阐述了用于监视服务的状况的各种技术。根据一些实施方案,DNS服务器可实施监视服务的状况以便在多个可用性区域中实施循环DNS的健康检查引擎。服务的每个服务实例可包括被配置为(1)监视服务实例的状况、以及(2)对从健康检查引擎接收的健康检查消息进行响应的监视代理。监视代理也可被配置为(1)在跟踪窗口期间收集与服务实例的一个或多个服务依赖方相关联的统计数据、(2)基于在跟踪窗口期间收集的统计数据来计算至少一个比率、以及(3)通过将所述至少一个比率与阈值进行比较来生成服务实例的状况。

【技术实现步骤摘要】
由计算设备提供的服务的健康状况监视
所描述的实施方案整体涉及基于网络的服务。更具体地,本文实施方案涉及用于监视包括服务依赖方的基于网络的服务的状况的技术。
技术介绍
基于云端的服务在今天的数字经济中已经变得无所不在。移动设备包括大量应用程序,该应用程序被配置为从经由互联网访问的一个或多个服务请求数据。例如,共享搭乘应用程序可被用来叫车,被叫车辆被指示在用户的移动设备中的全球定位系统(GPS)传感器所提供的位置处接载用户。实时数据诸如股票价格和体育比赛得分可被递送到应用程序,该应用程序在显示屏上集聚数据。基于云端的存储服务使得文件能够被多个被允许访问基于云端的存储服务的设备共享或处理。基于云端的计算服务使得位于远程数据中心中的大量计算功率能够被客户端设备按需利用以解决涉及大量计算(例如,处理原始科学数据)的复杂问题。已经在互联网上实施的服务类型的示例在多样性和数量方面是相当大的。值得注意的是,服务可被部署在多个地区中以及在每个地区内的多个可用性区域中,以便确保服务对客户端设备的高可用性。冗余是一种消除单点故障的方式,它涉及在世界各地不同地理位置处的多个可用性区域中的服务器上建立服务实例。域名系统(DNS)通过将主机名与网络地址(诸如互联网协议(IP)版本4(IPv4)或版本6(IPv6)网络地址)关联或对查找进行响应来提供用于在互联网上定位服务端点的装置。另外,DNS服务器可采用或集成用于监视不同IP地址上的服务的状况的能力,作为DNS系统自身的一部分。继而,DNS服务器可以基于服务的状况而添加或移除服务的主机名与不同的IP地址之间的关联。这样,可阻止来自客户端设备的针对服务的主机名的请求被传输给正在经历停机的服务实例。遗憾的是,用于监视服务状况的常规技术实施欠佳。例如,服务在问题与和正在经历停机的其他服务相关联的依赖方有关时可被归类为不可用。此外,当服务被归类为不可用时,用于(在适当的时候)将服务重新归类为可用的技术通常效率低下,从而增长客户端设备感知的停机时间。
技术实现思路
鉴于上述情况,所期望的是经改进的用于监视具有各种服务依赖方的服务的状况的技术。因此,并且如本文更详细地所阐述的,本专利申请描述了涉及用于(1)确定服务实例的状况、以及(2)向服务实例上游的健康检查引擎报告服务实例的状况,从而使得域名系统(DNS)服务器能够正确且快速地对服务的主机名与对应于服务实例的网络地址的关联进行归类的技术的各种实施方案。根据一些实施方案,DNS服务器可实施监视服务的状况以便在多个地区和/或可用性区域中实施循环DNS服务的健康检查引擎。就这一点而言,服务的每个服务实例可包括被配置为(1)监视服务实例的状况、和(2)对从健康检查引擎接收的健康检查消息进行响应的监视代理。根据一些实施方案,监视代理可被配置为(1)在跟踪窗口期间收集与服务实例的一个或多个服务依赖方相关联的统计数据、(2)基于在跟踪窗口期间所收集的统计数据来计算至少一个比率、以及(3)通过将所述至少一个比率与阈值进行比较来生成服务实例的状况。在一些实施方案中,用于服务实例的监视代理收集与一个或多个服务依赖方中的每个服务依赖方相关联的统计数据。根据一些实施方案,与网络接口相关联的服务依赖方的统计数据可包括以下中的一者或多者:(1)经由该网络接口传输给该服务依赖方的附加请求的数量、(2)从该服务依赖方接收的成功响应的数量、以及(3)从该服务依赖方接收的失败响应的数量,其中统计数据是在一段时间期间被收集的。继而,监视代理分析统计数据以确定服务实例的状况。服务实例的状况整体地反映所述一个或多个服务依赖方中每个服务依赖方的状况。在各种实施方案中,监视代理可被配置为针对每个服务依赖方计算从服务依赖方接收的成功响应与失败响应的比率。然后通过将与服务依赖方相关联的每个比率与阈值进行比较来确定服务实例的状况。具体地讲,服务实例的状况在每个服务依赖方的比率都高于阈值时被认为是第一状态(例如,肯定),并且在任何服务依赖方的比率低于阈值时被认为是第二状态(例如,否定)。在一些实施方案中,监视代理监视服务实例所生成的响应以确定服务实例的状况,而不是监视从服务依赖方接收的响应。服务实例所生成的响应将整体地反映从服务依赖方接收的响应,因为从服务依赖方接收的任何失败响应将使得服务实例所生成的响应也是失败响应。另外,监视代理可被配置为计算服务实例所生成的成功响应与失败响应的比率,并且将这个比率与阈值进行比较以确定服务实例的状况。在一些实施方案中,在确定服务实例的状况之前,检查统计数据以确定比率是否是统计相关的。当在跟踪窗口期间所收集的统计数据表明比率是基于数量比阈值小的在跟踪窗口期间由服务实例接收的多个请求(或者另选地,在跟踪窗口期间传输给服务依赖方中一者或多者的多个附加请求)时,服务实例的状况被保持为在前一跟踪窗口期间所确定的。在一些实施方案中,服务器计算设备对于包括在多个服务器计算设备上执行的多个服务实例的分布式具体实施的服务可实施负载均衡器。根据一些实施方案,负载均衡器可包括被配置为基于这些服务实例中每一者的状况来监视服务的状况的监视代理。具体地讲,监视代理可被配置为(1)通过网络接口从健康检查引擎接收健康检查消息、(2)基于服务实例的状况来生成服务的状况、以及(3)将服务的状况传输给健康检查引擎。在一些实施方案中,监视代理可被配置为(1)将健康检查消息转发给服务实例、(2)从每个服务实例接收对健康检查消息的响应、(3)基于从服务实例接收的响应中肯定响应的数量和否定响应的数量来计算比率、以及(4)将比率与阈值进行比较以确定服务的状况。在一些实施方案中,服务实例的状况或服务的状况可被反映在超文本传输协议(HTTP)响应消息中。具体地讲,反映服务或服务实例状况的状态的状况代码和/或状况消息可被选择并且包括在HTTP响应消息中。根据一些实施方案,所选择的状况代码可以是标准HTTP状况代码(例如,200好的、503服务不可用等)。但是,自定义状况代码和/或状况消息也可被包括在HTTP响应消息中,以指示服务或服务实例状况的状态。另选地,HTTP响应消息的消息主体可反映服务或服务实例状况的状态。根据结合以举例的方式示出所述实施方案的原理的附图而进行的以下详细描述,本专利申请的其他方面和优点将变得显而易见。附图说明本公开通过下面结合附图的具体描述将更易于理解,其中类似的附图标记表示类似的结构元件。图1示出了根据一些实施方案的可被配置为实施本文所述各种技术的不同方面的分布式环境的框图。图2示出了根据一些实施方案的可被实施以保持服务的总体高可用性的分布式环境。图3示出了根据一些实施方案的在服务实例和一个或多个服务依赖方之间传输的消息。图4示出了根据一些实施方案的包括多个服务实例的服务。图5示出了根据一些实施方案的用于监视服务实例的状况的示例性方法的流程图。图6示出了根据一些实施方案的用于监视包括多个分布式服务实例的服务的状况的示例性方法的流程图。图7示出了根据一些实施方案的可被用于实施本文所述的各种装置和/或方法的示例性计算设备的详细视图。具体实施方式在该部分描述了根据本申请的方法与装置的代表性应用。提供这些示例仅是为了添加语境并有助于理解所述实施方案。因此,对于本领域的技术人员而言本文档来自技高网
...

【技术保护点】
1.一种用于监视由服务实施的服务实例的状况的方法,包括由服务器计算设备执行以下操作:在跟踪窗口期间收集与所述服务实例的一个或多个服务依赖方相关联的统计数据;基于在所述跟踪窗口期间收集的所述统计数据来计算至少一个比率;以及通过将所述至少一个比率与阈值进行比较来生成所述服务实例的状况。

【技术特征摘要】
2017.12.21 US 62/609,245;2018.04.25 US 15/962,8851.一种用于监视由服务实施的服务实例的状况的方法,包括由服务器计算设备执行以下操作:在跟踪窗口期间收集与所述服务实例的一个或多个服务依赖方相关联的统计数据;基于在所述跟踪窗口期间收集的所述统计数据来计算至少一个比率;以及通过将所述至少一个比率与阈值进行比较来生成所述服务实例的状况。2.根据权利要求1所述的方法,其中收集与一个或多个服务依赖方相关联的统计数据包括,针对所述一个或多个服务依赖方中的每个服务依赖方:对在所述跟踪窗口期间在与所述服务依赖方相关联的网络接口处接收的多个响应中的成功响应的数量进行计数;以及对在所述跟踪窗口期间在所述网络接口处接收的所述多个响应中的失败响应的数量进行计数。3.根据权利要求2所述的方法,其中基于在所述跟踪窗口期间收集的所述统计数据来计算所述至少一个比率包括,针对至少两个服务依赖方中的每个服务依赖方:计算在所述网络接口处接收的成功响应的数量与在所述网络接口处接收的失败响应的数量的比率。4.根据权利要求3所述的方法,其中所述服务实例的所述状况:在所述至少两个服务依赖方中每个服务依赖方的所述比率高于所述阈值时,被归类为肯定的;或者在所述至少两个服务依赖方中任何服务依赖方的所述比率低于所述阈值时,被归类为否定的。5.根据权利要求1所述的方法,其中通过将所述至少一个比率与所述阈值进行比较来生成所述服务实例的所述状况包括:对在所述跟踪窗口期间被传输给每个服务依赖方的附加请求的数量进行计数;以及在被传输给任何服务依赖方的附加请求的数量低于第二阈值时,保持在前一跟踪窗口期间生成的所述状况。6.根据权利要求1所述的方法,其中每个响应包括超文本传输协议(HTTP)响应消息。7.根据权利要求6所述的方法,其中每个成功响应是包括2XX状况代码的HTTP响应消息,并且其中每个失败响应是包括4XX或5XX状况代码的HTTP响应消息。8.根据权利要求1所述的方法,其中收集与一个或多个服务依赖方相关联的统计数据包括:对在所述跟踪窗口期间由所述服务实例生成的成功响应的数量进行计数;以及对在所述跟踪窗口期间由所述服务实例生成的失败响应的数量进行计数。9.根据权利要求1所述的方法,还包括:从与域名系统(DNS)服务器相关联的健康检查引擎接收健康检查消息;以及向所述健康检查引擎或与所述服务的多个服务实例对应的负载均衡器中的一者传输对所述健康检查消息的响应。10.根据权利要求9所述的方法,还包括:在所述负载均衡器的监视代理处接收指示所述服务的主机名与网络地址之间的关联在DNS服务器的数据结构中被标记为不可用的更新请求消息;由所述监视代理监视所述服务的所述状况以检测所述状况从第一状况向肯定的第二状况的转变;以及将更新响应消息传输给所述健康检查引擎,以使得所述DNS服务器将所述服务的所述主机名与所述网络地址之间的所述关联标记为可用的。11.一种用于监视服务的...

【专利技术属性】
技术研发人员:H·R·科塔迪亚M·Y·库姆里J·L·雷奈尔L·W·常T·M·基姆
申请(专利权)人:苹果公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1