供应故障的区块链管理的制作方法

文档序号:33507390发布日期:2023-03-18 04:42阅读:229来源:国知局
供应故障的区块链管理的制作方法
供应故障的区块链管理


背景技术:

1.本发明总体上涉及云服务供应领域,并且更具体地涉及云服务供应故障的区块链管理。
2.区块链是去中心化和分布式数字分类账,其能够以可验证和永久的方式有效地记录两方或更多方之间的交易。分类账本身也可以被编程以自动触发交易。区块链维护被称为块的连续增长的记录列表,防止篡改和修改。每个块包含时间戳和到先前块的链路。通过设计,区块链固有地抵抗数据的修改-一旦记录,块中的数据不能追溯地改变。使用对等网络和分布式时间戳服务器,自主地管理区块链数据库。区块链技术的去中心化共识算法允许若干实体维护共享信息记录而不必单独地相互信任,因为共识是在每个网络的基础上形成的。联网模型产生具有审查抗性、防篡改性的优点的系统和不具有单个故障点的系统。
3.随着数字信息的持续增长,对云计算的依赖不断增加。云计算是用于使得能够方便地、按需地网络访问可配置计算资源(例如,服务器、存储、应用和服务)的共享池的模型,所述可配置计算资源能够以最小的管理努力被快速供应和释放。低成本计算机和存储设备的可用性以及硬件虚拟化和面向服务的架构的广泛采用已经导致云计算的增长。云计算提供的可扩展性使得用户能够随着计算需求增加而放大,然后随着需求降低而再次缩小。
4.最近,云的使用和基于云的服务供应已经变成主流,从而使得消费者能够在公共、私有或混合云中共享资源。对于服务供应,需要接口的“外部系统”来完成服务供应工作流,这可能需要一个或多个应用编程接口(api)调用的外部系统通信的更深链。为了完成端到端的服务供应,需要协调通常由不同的所有者管理和维护的多个外部系统。一些外部系统可以是传统系统,诸如变更管理或售票系统。如果服务供应故障,则可能难以在不与所涉及的各方来回讨论和协商的情况下执行根本原因分析。此外,即使在某个外部系统上识别出根本原因时,服务供应也被中断,因为修复问题并且测试修复需要的时间。


技术实现要素:

5.本发明的第一方面公开了一种方法,该方法包括一个或多个计算机处理器捕获与服务供应相关联的一个或多个应用编程接口(api)调用。一个或多个计算机处理器将所述捕获的一个或多个api调用提交到区块链分类账。一个或多个计算机处理器在服务供应期间检测系统故障。一个或多个计算机处理器从区块链分类账中提取提交的一个或多个api调用。基于提取的一个或多个api调用,一个或多个计算机处理器识别与系统故障相关联的有问题的系统。
6.本发明的第二方面公开了一种计算机程序产品,该计算机程序产品包括一个或多个计算机可读存储介质以及共同存储在该一个或多个计算机可读存储介质上的程序指令。所存储的程序指令包括用于捕获与服务供应相关联的一个或多个应用编程接口(api)调用的程序指令。所存储的程序指令包括用于将所述捕获的一个或多个api调用提交到区块链分类账的程序指令。所存储的程序指令包括在服务供应期间检测系统故障的程序指令。所存储的程序指令包括用于从区块链分类账提取提交的一个或多个api调用的程序指令。所
存储的程序指令包括基于提取的一个或多个api调用,用于识别与系统故障相关联的有问题的系统的程序指令。
7.本发明的第三方面公开了一种计算机系统,该计算机系统包括一个或多个计算机处理器和一个或多个计算机可读存储介质,其中程序指令被共同存储在该一个或多个计算机可读存储介质上。所存储的程序指令包括用于捕获与服务供应相关联的一个或多个应用编程接口(api)调用的程序指令。用于将所述捕获的一个或多个api调用提交到区块链分类账的程序指令。所存储的程序指令包括在服务供应期间检测系统故障的程序指令。所存储的程序指令包括用于从区块链分类账提取所提交的一个或多个api调用的程序指令。所存储的程序指令包括基于所提取的一个或多个api调用,用于识别与系统故障相关联的有问题的系统的程序指令。
8.在另一个方面,识别所述有问题的系统包括:由一个或多个计算机处理器在其间执行所述系统故障的根因分析;由一个或多个计算机处理器生成报告,其中所述报告包括所述根因分析、所述有问题的系统以及至少一个校正动作;以及由一个或多个计算机处理器将所述报告提交给所述区块链分类账。生成包括根因分析的报告是有利的,因为用户不必干预该过程来确定故障的根本原因。向区块链分类账提交包括根本原因分析的报告是有利的,因为不能改变区块链分类账的报告。
9.在又另一个方面,云服务供应故障的区块链管理包括:由一个或多个计算机处理器检索与所述有问题的系统和所述服务供应相关联的智能合约;由一个或多个计算机处理器接收与所述有问题的系统相关联的一个或多个api调用;以及基于所述智能合约,由一个或多个计算机处理器生成对与所述有问题的系统相关联的所述一个或多个api调用的伪响应。检索智能合约并基于所检索的智能合约生成伪响应是有利的,因为来自有问题的系统的响应看起来在问题被修复时发生,使得能够无延迟地完成供应。
附图说明
10.图1是示出根据本发明的实施例的分布式数据处理环境的功能框图;
11.图2是描绘根据本发明实施例的服务协调器在图1的分布式数据处理环境内的服务器计算机上用于服务供应故障的区块链管理的操作步骤的流程图;
12.图3示出了根据本发明的实施例的服务协调器在图1的分布式数据处理环境内的服务器计算机上的操作步骤的实例;
13.图4描绘了根据本发明的实施例的在图1的分布式数据处理环境内执行服务协调器的服务器计算机的组件的框图;
14.图5描绘了根据本发明的实施例的云计算环境;以及
15.图6描绘了根据本发明的实施例的抽象模型层。
具体实施方式
16.本发明的实施例认识到可以通过自动捕获和存储针对至外部系统的每个api调用的系统间通信数据并且将通信保存到区块链分类账以实现根因分析和问题所有者识别来获得效率。本发明的实施例还基于捕获和存储在区块链分类账系统中的数据来实现主动的、自动的服务供应故障分析和识别,以用于复杂的服务供应。本发明的实施例还提供了一
种智能合约,用于发生在当问题被解决时,来自有问题的系统的响应,使得能够无延迟地完成供应。本发明的实施例的实现方式可以采取多种形式,并且随后参照附图讨论示例性实现方式细节。
17.图1是一个功能框图,示出了根据本发明一个实施例的分布式数据处理环境,一般指定为100。如本文所使用的术语“分布式”描述了包括多个物理上不同的设备的计算机系统,这些设备作为单个计算机系统一起操作。图1仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。本领域技术人员在不脱离权利要求书所述的本发明的范围内可对所描述的环境作出许多修改。
18.分布式数据处理环境100包括服务器计算机104、云管理平台114和区块链分类账系统118,所有这些都通过网络102互连。网络102可以是例如电信网络、局域网(lan)、广域网(wan)(诸如互联网)或三者的组合,并且可以包括有线、无线或光纤连接。网络102可以包括能够接收和传输数据、语音和/或视频信号(包括包含语音、数据和视频信息的多媒体信号)的一个或多个有线和/或无线网络。一般而言,网络102可以是将支持服务器计算机104、云管理平台114、区块链分类账系统118和分布式数据处理环境100内的其他计算设备(未示出)之间的通信的连接和协议的任何组合。
19.服务器计算机104可以是独立计算设备、管理服务器、网络服务器、移动计算设备、或能够接收、发送、和处理数据的任何其他电子设备或计算系统。在其他实施例中,服务器计算机104可表示诸如在云计算环境中利用多个计算机作为服务器系统的服务器计算系统。在另一实施例中,服务器计算机104可以是膝上型计算机、平板计算机、上网本计算机、个人计算机(pc)、台式计算机、个人数字助理(pda)、智能电话、或能够经由网络102与分布式数据处理环境100内的云管理平台114、区块链分类账系统118和其他计算设备(未示出)通信的任何可编程电子设备。在另一实施例中,服务器计算机104表示利用当在分布式数据处理环境100内被访问时充当单个无缝资源池的集群计算机和组件(例如,数据库服务器计算机、应用服务器计算机等)的计算系统。服务器计算机104包括服务协调器106。如关于图4更详细描绘和描述的,服务器计算机104可包括内部和外部硬件组件。
20.服务协调器106解决了对用于与多个外部依赖性(如系统和api调用)接口连接以在配设故障的情况下实现服务请求所需的服务供应的云管理平台实现的当前问题。服务协调器106基于准确的数据捕获提供自动服务故障分析和基于事实的识别,这是有利的,因为它使得快速纠正动作能够修复供应故障。服务协调器106还提供无服务中断或管理员干预的服务供应故障的自动修复,这有利于经由供应后数据同步和更新实现服务可用性和延迟的数据一致性和完整性。在检测到服务供应执行工作流之后,服务协调器106捕获与工作流相关联的api调用数据并将所捕获的数据提交到区块链分类账。服务协调器106检测供应故障。服务协调器106基于所捕获的数据执行根本原因分析并且识别有问题的系统。服务协调器106向区块链分类账系统118提交根因分析的结果。服务协调器106检索与有问题的系统相关联的智能合约。当服务协调器106接收到针对有问题的系统的传入api调用时,服务协调器106生成对传入api调用的一个或多个虚拟响应,以便防止服务供应停止。服务协调器106将与传入的api调用相关联的数据提交到区块链分类账系统118中。服务协调器106处理来自传入api调用的数据更新,以便完成服务供应。在所描绘的实施例中,服务协调器106包括请求捕获模块108、分析模块110和自动修复器模块112。在另一实施例中,请求捕获模块
108、分析模块110和自动修复器模块112中的一个或多个的功能被完全集成到服务协调器106中。参见图2更详细地描绘和描述了服务协调器106。
21.在一个实施例中,请求捕获模块108连续地监视供应请求和执行,并且从/对一个或多个外部相关系统(如外部相关系统1161-n)的系统调用和响应来捕获数据。请求捕获模块108还可以将捕获的数据提交到区块链分类账系统118中。
22.在实施例中,分析模块110从来自区块链分类账系统118的故障的供应请求中提取所捕获的数据并且对所提取的数据执行根本原因分析。分析模块110还可以生成分析报告并且将该报告提交到区块链分类账系统118中。
23.在实施例中,自动修复器模块112基于智能合约利用伪响应来响应指向有问题的系统的api调用,以及将api调用的细节指向区块链分类账系统118。自动修复器模块112还可离线地执行批更新。
24.云管理平台114是被设计成用于在公共、私有或混合云环境中管理云计算资源的一套软件工具。云管理平台提供用于云服务客户跨多个云服务基础设施(包括场所内云基础设施和公共云服务供应商基础设施两者)来管理应用程序和相关联的数据集的部署和操作的装置。云管理平台为混合云和多云环境提供管理能力。云管理平台允许用户通过自动化云管理任务的编排套件来管理云资源。云管理平台可以使编排任务自动化,即,云管理平台可以自动管理管理任务以帮助优化资源使用。在所描绘的实施例中,云管理平台114驻留在分布式数据处理环境100内的服务器计算机(未示出)上。在另一实施例中,云管理平台114可以驻留在服务器计算机104上。云管理平台114包括外部依赖系统1161-n。
25.外部依赖系统1161-n(本文为外部依赖系统116)可以是云管理平台114用于对服务供应请求进行响应的系统中的一者或多者。如本文所使用的,n表示正整数,并且因此在本发明的给定实施例中实现的多个场景不限于图1中所描绘的那些场景。外部依赖系统116的示例包括但不限于it变更管理系统、票务系统、ip地址管理系统、备份和恢复系统等。在所描绘的实施例中,(一个或多个)外部依赖系统116驻留在云管理平台114内。在另一实施例中,一个或多个外部依赖系统116可驻留在分布式数据处理环境100内的其他地方,只要云管理平台114可访问一个或多个外部依赖系统116中的每一个。
26.区块链分类账系统118是本领域中已知的多个系统中的一个或多个,这些系统可以用于将数字值的记录(例如,交易、身份、资产、文档和属性)存储到不可变的分类账中,或向分类账添加自强制执行业务逻辑,如智能合约。术语“智能合约”是指定义复杂交易逻辑并且促进跨组织工作流(包括但不限于数据的存储、数据访问权限、定购工作流和计算)的数字实体。在区块链的上下文中,智能合约是存储在区块链上的脚本。由于它们驻留在链上,所以智能合约具有唯一地址。智能合约由发送到其地址的消息或交易触发。在一个实施例中,区块链分类账系统118是无许可的,即,公共的区块链系统为任何人开放参与。在另一实施例中,区块链分类账系统118被许可,即,私有的区块链系统仅对封闭组参与者可用。在所描绘的实施例中,区块链分类账系统118驻留在服务器计算机104的外部。在另一实施例中,区块链分类账系统118可以驻留在服务器计算机104上或分布式数据处理环境100内的其他地方,只要服务协调器106具有对区块链分类账系统118的访问。区块链分类账系统118包括数据库120。
27.数据库120是用于由服务协调器106使用的数据的储存库。数据库120可以代表一
个或多个数据库。在所描绘的实施例中,数据库120驻留在区块链分类账系统118上。在另一实施例中,数据库120可以驻留在分布式数据处理环境100内的其他地方,只要服务协调器106具有对数据库120的访问权。数据库是有组织的数据集合。数据库120可以用能够存储可由服务协调器106访问和利用的数据和配置文件的任何类型的存储设备来实现,诸如数据库服务器、硬盘驱动器或闪存。数据库120存储与由服务协调器106收集和使用的服务供应故障的管理相关联的数据。数据库120还可存储与外部依赖系统116相关联的一个或多个智能合约。数据库120还可以存储历史供应数据。例如,历史供应数据可以包括与没有错误的、端到端地成功完成的先前服务请求相关联的响应数据。成功的历史供应数据对于与未来服务请求的比较可能是有用的。
28.图2是描绘根据本发明实施例的用于图1的分布式数据处理环境100内的服务器计算机104上的服务协调器106的用于服务供应故障的区块链管理的操作步骤的流程图。
29.服务协调器106检测服务供应执行工作流(步骤202)。在实施例中,当用户需要服务供应时,用户向云管理平台114提交请求,云管理平台114进而触发去往和来自外部依赖系统116的api调用。在实施例中,服务协调器106经由网络102从云管理平台114接收云管理平台114正在发起服务供应请求的工作流执行的通知。在另一实施例中,服务协调器106可直接从用户接收请求并经由网络102将请求传递到云管理平台114。在实施例中,请求捕获模块108检测服务供应请求和执行工作流。在实施例中,在检测到服务供应执行工作流时,服务协调器106开始连续监视和捕获来自外部依赖系统116的系统调用和系统响应。在另一实施例中,服务协调器106开始经由请求捕获模块108连续地监视和捕获来自外部依赖系统116的系统调用和系统响应。
30.服务协调器106捕获api调用数据(步骤204)。在实施例中,响应于检测到服务供应执行工作流,服务协调器106开始连续地监视和捕获去往和来自外部依赖系统116的api调用数据。api调用数据可以包括但不限于系统间通信数据、与系统故障相关联的时间戳、来自外部依赖系统116的一个或多个响应、服务调用参数等。在实施例中,在检测到服务供应执行工作流时,请求捕获模块108开始连续地监视和捕获来自外部依赖系统116的api调用数据。在实施例中,服务协调器106经由请求捕获模块108捕获api调用数据。在实施例中,除了api调用数据之外,服务协调器106捕获与服务供应请求相关联的数据。例如,服务协调器106可捕获请求id、请求参数、和/或从其接收请求的承租人或用户。
31.服务协调器106向区块链分类账系统118提交捕获的api调用数据(步骤206)。在实施例中,当服务协调器106捕获api调用数据时,服务协调器106向区块链分类账系统118提交捕获的api调用数据。在实施例中,服务协调器106按时间顺序向区块链分类账系统118提交捕获的api调用数据。在实施例中,服务协调器106在数据库120中存储所捕获的api调用数据。在实施例中,服务协调器106将新捕获的数据与存储在数据库120中的历史供应数据组合。在实施例中,服务协调器106经由请求捕获模块108将api调用数据提交到区块链分类账系统118。
32.服务协调器106检测供应故障(步骤208)。在一个实施例中,服务协调器106从云管理平台114接收指示一个或多个外部依赖系统116在供应执行中经历故障的通知。在另一实施例中,服务协调器106从外部依赖系统116直接检测供应执行的故障。在一个实施例中,服务协调器106连续地监视来自外部依赖系统116的系统调用和系统响应,并且可以基于响应
的内容确定(多个)外部依赖系统116中的至少一个正在经历故障。在实施例中,服务协调器106经由请求捕获模块108检测供应故障。
33.服务协调器106执行根本原因分析并且识别有问题的系统(步骤210)。在实施例中,服务协调器106从区块链分类账系统118提取捕获的api调用数据,并且分析捕获的api调用数据以确定供应故障的根本原因。在实施例中,服务协调器106提取捕获的数据以及历史供应数据,并且将两个条件(即,成功与故障)进行比较,从而得到根本原因的结论。在实施例中,服务协调器106经由分析模块110执行根本原因分析。当服务协调器106完成分析时,服务协调器106识别外部依赖系统116中的一个或多个有问题的系统。在一个实施例中,服务协调器106经由分析模块110识别外部依赖系统116中的一个或多个有问题的系统。在一个实施例中,服务协调器106识别纠正有问题的系统的供应故障所需的一个或多个纠正动作。
34.服务协调器106将分析结果提交至区块链分类账系统118(步骤212)。在实施例中,服务协调器106生成包括根因分析的故障分析报告,并将该报告提交到区块链分类账系统118。生成包括根因分析的报告是有利的,因为用户不必干预该过程来确定故障的根因。向区块链分类账提交包括根因分析的报告是有利的,因为不能改变在区块链分类账上的报告。在一个实施例中,该报告包括一个或多个校正动作。在一个实施例中,服务协调器106通知一个或多个有问题的系统的所有者。在该实施例中,通知包括生成的报告。例如,服务协调器106可以通过发送包括所生成的报告的电子邮件或文本消息来通知有问题的系统的所有者。在另一示例中,服务协调器106可以通过发送带有链接的电子邮件或文本消息通知有问题的系统的所有者以查看在区块链分类账系统118上的报告。在实施例中,服务协调器106经由分析模块110提交分析结果并且生成报告。
35.服务协调器106检索智能合约(步骤214)。在实施例中,服务协调器106从数据库120检索与有问题的系统相关联的智能合约。在实施例中,检索的智能合约定义有问题的系统的所有者和云管理平台114之间的协议。例如,如果系统在服务供应过程期间经历故障(诸如性能问题),则系统所有者可能已经同意将责任分配给服务协调器106以用于响应传入请求(诸如api调用),而无需实际处理该请求。在实施例中,当服务协调器106检索智能合约时,服务协调器106触发自动修复器模块112以实现智能合约的要求。
36.服务协调器106接收针对有问题的系统的传入api调用(步骤216)。在一个实施例中,当云管理平台114继续执行供应请求工作流时,服务协调器106接收用于先前识别的有问题的系统的一个或多个传入api调用。在一实施例中,服务协调器106经由自动修复器模块112接收对有问题的系统的传入api调用。
37.服务协调器106处理数据更新(步骤218)。在实施例中,基于传入的api调用数据,服务协调器106从不能被有问题的系统处理的请求调用启动数据更新。在实施例中,服务协调器106经由自动修复器模块112接收未经处理的调用细节,并且根据需要,基于智能合约将数据解析成不同动作。例如,服务协调器106可经由自动修复器模块112来更新与有问题的系统相关联的后端数据库的表。在另一示例中,服务协调器106可经由自动修复器模块112将记录插入到传统系统中。在一实施例中,自动修复器模块112离线地执行批更新以实现每个供应请求的最终一致性。在实施例中,处理数据更新包括生成和/或识别非同步的数据以供稍后由有问题的系统处理。通过处理数据更新,服务协调器106防止服务中断和有问
题的系统可能引起的干预的需要。
38.服务协调器106生成针对传入的api调用的伪响应(步骤220)。在实施例中,服务协调器106基于所检索的智能合约生成对传入api调用的伪响应。检索智能合约并基于所检索的智能合约生成伪响应是有利的,因为来自有问题的系统的响应看起来在问题被解决时发生,使得能够无延迟地完成供应。在另一实施例中,服务协调器106基于根本原因分析的内容生成对传入api调用的伪响应。在进一步的实施例中,服务协调器106基于所检索的智能合约和根因分析两者生成对传入api调用的伪响应。例如,伪响应可以是“伪ok”。在另一个示例中,伪响应可以是“待处理数据”。进一步,如本领域技术人员将认识到的,http定义可用于传达用户请求的结果的40个标准状态代码。状态代码被划分为五个类别,“2xx success”指示用户的请求被成功执行。例如,伪响应可以是“200(ok)”,其指示rest api调用成功地执行了所请求的动作。在另一示例中,伪响应可以是“201(创建)”,指示资源被创建,诸如由控制器动作引起。在实施例中,服务协调器106经由自动修复器模块112充当有问题的系统的模拟系统或模拟器,并且对于每个新的系统调用,服务协调器106做出响应,好像系统调用由有问题的系统完成。伪响应使得服务供应能够完成,因为有问题的系统不会拖延供应工作流。
39.服务协调器106将来自传入api调用的数据提交至区块链分类账系统118(步骤222)。在一个实施例中,服务协调器106收集与一个或多个传入api调用相关联的数据(即,未处理的调用细节),并将数据提交到区块链分类账系统118。该数据可包括api调用的细节,诸如api名称和相关联的参数、系统id、时间戳、错误代码、错误消息、错误日志以及restapi调用的其他请求/响应示例,如本领域技术人员将认识到的。在实施例中,服务协调器106经由自动修复器模块112将数据提交到区块链分类账系统118中。在实施例中,服务协调器106将数据插入数据库120中。在实施例中,除了传入的api调用数据之外,服务协调器106将所生成的伪响应与相关联的api调用数据一起提交到区块链分类账系统118。在实施例中,除了传入的api调用数据之外,服务协调器106用相关联的api调用数据向区块链分类账系统118提交与处理的更新相关联的任何数据。
40.服务协调器106确定有问题的系统是否已恢复(决策框224)。基于监视有问题的系统的状态,服务协调器106确定有问题的系统是否已经从检测到的故障中恢复。在实施例中,服务协调器106从有问题的系统的所有者接收指示问题已被解决和测试的通知。
41.如果服务协调器106确定有问题的系统尚未恢复(“否”分支,决策框224),则服务协调器106返回至步骤216以继续接收对有问题的系统的传入api调用。
42.如果服务协调器106确定有问题的系统已经恢复(“是”分支,决策框224),则服务协调器106将控制返回至恢复系统(步骤226)。在实施例中,响应于有问题的系统的恢复,服务协调器106停止向区块链分类账系统118提交api调用数据并且禁用模拟器对api调用做出响应。在一个实施例中,服务协调器106停止请求捕获模块108将api调用提交到区块链分类账系统118。在一个实施例中,服务协调器106禁用自动修复器模块112充当模拟器。在一个实施例中,服务协调器106继续向区块链分类账系统118提交api调用以便捕获更多成功的数据以添加到存储在数据库120中的历史供应数据。
43.图3展示了根据本发明的实施例的在图1的分布式数据处理环境100内的服务器计算机104上的服务协调器106的操作步骤的示例300。示例300表示系统调用的分层层和时间
序列两者。示例300包括web用户界面302、浏览器304、api调用3061-n(本文为(一个或多个)api调用306)、云管理平台314(其表示图1的云管理平台114)、以及外部依赖系统3161-n(本文为(一个或多个)外部相依系统316(其表示图1的(一个或多个)外部依赖系统116))。如关于图2的步骤202所讨论的,当用户需要服务供应时,用户经由浏览器304从也被称为用户门户的web用户接口302向云管理平台314提交请求,云管理平台314进而触发去往和来自外部依赖系统316的api调用306。
44.为了在服务供应期间促进任何问题或故障分析,服务协调器106将与来自云管理平台314的服务供应请求相关联的数据提交至区块链节点324,如将在图1的区块链分类账系统118上发现的。数据类型334是提交给区块链节点324的数据的示例,并且包括时间戳、请求id、承租者和/或用户、以及请求参数。此外,当服务供应工作流执行时,服务协调器106将与外部相关系统316相关联的数据提交至区块链节点3261-n,本文为图1的区块链分类账系统118上的区块链节点326。数据类型3361-n是提交给区块链节点326的、包括时间戳和服务调用参数的数据的示例。事件312表示服务协调器106检测外部依赖系统316n上的供应故障,如关于图2的步骤204所讨论的。如关于图2的步骤206和208所讨论的,服务协调器106捕获与供应故障相关联的数据(示出为新的区块链节点328)并且将其提交到图1的区块链分类账系统118。数据类型336n+1是提交到新的区块链节点328的数据的示例,并且包括时间戳、系统id、错误代码和错误消息。如关于图2的步骤210和212所讨论的,服务协调器106连续地将新的区块链节点添加到区块链分类账系统118,直到有问题的系统(即,外部从属系统316n)被识别并且服务协调器106确定供应故障的根本原因。
45.图4描绘了根据本发明的实施例在图1的分布式数据处理环境100内的服务器计算机104的部件的框图。应当理解,图4仅提供一个实现方式的图示并且不暗示关于其中可以实现不同实施例的环境的任何限制。可以对所描绘的环境做出许多修改。
46.服务器计算机104可以包括(多个)处理器404、高速缓存414、存储器406、永久性存储器408、通信单元410、(多个)输入/输出(i/o)接口412和通信结构402。通信结构402提供高速缓存414、存储器406、永久存储器408、通信单元410和输入/输出(i/o)接口412之间的通信。通信结构402可用被设计用于在处理器(诸如微处理器、通信和网络处理器等)、系统存储器、外围设备和系统内的任何其他硬件组件之间传递数据和/或控制信息的任何架构来实现。例如,通信结构402可用一个或多个总线来实现。
47.存储器406和永久存储器408是计算机可读存储介质。在该实施例中,存储器406包括随机存取存储器(ram)。一般而言,存储器406可包括任何合适的易失性或非易失性计算机可读存储介质。高速缓存414是快速存储器,其通过保存来自存储器406的最近访问的数据和最近访问的数据附近的数据来增强处理器404的性能。
48.用于实施本发明的实施例的程序指令和数据(例如,服务协调器106)被存储在持久性存储装置408中以便由服务器计算机104的对应处理器404中的一个或多个经由高速缓存414执行和/或访问。在该实施例中,永久存储器408包括磁性硬盘驱动器。可替代地,或除了磁性硬盘驱动之外,永久存储器408可以包括固态硬盘驱动、半导体存储设备、只读存储器(rom)、可擦除可编程只读存储器(eprom)、闪存、或能够存储程序指令或数字信息的任何其他计算机可读存储介质。
49.持久性存储装置408使用的介质还可以是可移除的。例如,可移动硬盘驱动器可以
用于永久存储器408。其他示例包括光盘和磁盘、拇指驱动器和智能卡,它们被插入到驱动器中以便转移到也是永久存储器408的一部分的另一计算机可读存储介质上。
50.在这些示例中,通信单元410提供与其他数据处理系统或设备的通信,包括云管理平台114和区块链分类账系统118的资源。在这些示例中,通信单元410包括一个或多个网络接口卡。通信单元410可通过使用物理和无线通信链路中的任一者或两者提供通信。服务协调器106以及用于实现本发明的其他程序和数据可以通过通信单元410下载到服务器计算机104的永久存储器408。
51.i/o接口412允许与可以连接至服务器计算机104的其他设备进行数据的输入和输出。例如,(多个)i/o接口412可以提供到(多个)外部设备416的连接,所述外部设备416诸如键盘、小键盘、触摸屏、麦克风、数码相机和/或一些其他合适的输入设备。外部设备416还可包括便携式计算机可读存储介质,诸如例如拇指驱动器、便携式光盘或磁盘、以及存储卡。用于实施本发明的实施例的软件和数据(例如,服务器计算机104上的服务协调器106)可以存储在这样的便携式计算机可读存储介质上并且可以通过i/o接口412加载到永久存储器408上。i/o接口412还连接到显示器418。
52.显示器418提供用于向用户显示数据的机制并且可以是例如计算机监视器。显示器418还可用作触摸屏,诸如平板计算机的显示器。
53.应当理解的是,尽管本公开包括关于云计算的详细描述,但本文陈述的传授内容的实现方式不限于云计算环境。相反,本发明的实施例能够结合现在已知的或以后开发的任何其他类型的计算环境来实现。
54.云计算是一种服务交付模型,用于使得能够方便的、按需的网络访问可配置计算资源(例如,网络、网络带宽、服务器、处理、存储器、存储、应用、虚拟机和服务)的共享池,所述可配置计算资源可以用最小的管理努力或与所述服务的提供者的交互来快速供应和释放。该云模型可以包括至少五个特性、至少三个服务模型和至少四个部署模型。
55.特性如下:
56.按需自助服务:云消费者可以根据需要自动地单方面地配设计算能力,如服务器时间和网络存储,而无需与服务的提供商进行人类交互。
57.广泛的网络接入:能力可通过网络获得并且通过促进由异构薄或厚客户端平台(例如,移动电话、膝上计算机、和pda)使用的标准机制访问。
58.资源池:提供者的计算资源被池化以使用多租户模型来服务多个消费者,其中不同的物理和虚拟资源根据需要动态地分配和重新分配。存在位置独立性的感觉,因为消费者通常不具有对所提供的资源的确切位置的控制或了解,但可能能够以较高抽象级别(例如,国家、州或数据中心)指定位置。
59.快速弹性:能够快速且弹性地供应能力,在一些情况下自动地,以快速缩小和快速释放以快速放大。对于消费者而言,可用于供应的能力通常显得不受限制并且可以在任何时间以任何数量购买。
60.测量服务:云系统通过在适合于服务类型(例如,存储、处理、带宽、和活动用户账户)的某个抽象级别处利用计量能力来自动控制和优化资源使用。可以监视、控制和报告资源使用,为所利用的服务的提供者和消费者提供透明度。
61.服务模型如下:
62.软件即服务(saas):提供给消费者的能力是使用在云基础设施上运行的提供者的应用。可通过诸如web浏览器(例如,基于web的电子邮件)之类的瘦客户端接口从不同客户端设备访问应用。消费者不管理或控制包括网络、服务器、操作系统、存储或甚至单独的应用能力的底层云基础设施,可能的例外是有限的用户特定应用配置设置。
63.平台即服务(paas):提供给消费者的能力是将消费者创建的或获取的使用由提供商支持的编程语言和工具创建的应用程序部署到云基础设施上。消费者不管理或控制包括网络、服务器、操作系统或存储的底层云基础设施,但是对所部署的应用和可能的应用托管环境配置具有控制。
64.基础设施即服务(iaas):提供给消费者的能力是提供处理、存储、网络、和其他基本计算资源,其中消费者能够部署和运行任意软件,其可以包括操作系统和应用程序。消费者不管理或控制底层云基础设施,而是具有对操作系统、存储、所部署的应用的控制以及对所选联网组件(例如,主机防火墙)的可能受限的控制。
65.部署模型如下:
66.私有云:云基础架构仅为组织运作。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
67.社区云:云基础设施由若干组织共享并且支持具有共享关注(例如,任务、安全要求、策略、和合规性考虑)的特定社区。它可以由组织或第三方管理,并且可以存在于场所内或场所外。
68.公共云:使云基础设施对普通公众或大型行业组可用并且由出售云服务的组织拥有。
69.混合云:云基础设施是两个或更多个云(私有、社区或公共)的组合,这些云保持唯一实体但通过使数据和应用能够移植的标准化或专有技术(例如,用于云之间的负载平衡的云突发)绑定在一起。
70.云计算环境是面向服务的,集中于无状态、低耦合、模块化和语义互操作性。云计算的核心是包括互连节点网络的基础设施。
71.现在参见图5,描绘了说明性云计算环境50。如图所示,云计算环境50包括云消费者使用的本地计算设备可以与其通信的一个或多个云计算节点10,本地计算设备诸如例如个人数字助理(pda)或蜂窝电话54a、台式计算机54b、膝上型计算机54c和/或汽车计算机系统54n。节点10可彼此通信。它们可以物理地或虚拟地分组(未示出)在一个或多个网络中,诸如如上所述的私有云、社区云、公共云或混合云、或其组合。这允许云计算环境50提供基础设施、平台和/或软件作为云消费者不需要为其维护本地计算设备上的资源的服务。应当理解,图5中所示的计算设备54a-n的类型仅旨在是说明性的,并且计算节点10和云计算环境50可通过任何类型的网络和/或网络可寻址连接(例如,使用网络浏览器)与任何类型的计算机化设备通信。
72.现在参见图6,示出了由云计算环境50(图5)提供的一组功能抽象层。应当事先理解,图6中所示的组件、层和功能仅旨在是说明性的,并且本发明的实施例不限于此。如所描述,提供以下层和对应功能:
73.硬件和软件层60包括硬件和软件组件。硬件组件的示例包括:大型机61;基于risc(精简指令集计算机)架构的服务器62;服务器63;刀片服务器64;存储设备65;以及网络和
联网组件66。在一些实施例中,软件组件包括网络应用服务器软件67和数据库软件68。
74.虚拟化层70提供抽象层,从该抽象层可以提供虚拟实体的以下示例:虚拟服务器71;虚拟存储器72;虚拟网络73,包括虚拟专用网络;虚拟应用和操作系统74;以及虚拟客户端75。
75.在一个示例中,管理层80可以提供以下描述的功能。资源供应81提供用于在云计算环境内执行任务的计算资源和其他资源的动态采购。计量和定价82在云计算环境内利用资源时提供成本跟踪,并为这些资源的消费开账单或发票。在一个示例中,这些资源可以包括应用软件许可证。安全性为云消费者和任务提供身份验证,以及为数据和其他资源提供保护。用户门户83为消费者和系统管理员提供对云计算环境的访问。服务水平管理84提供云计算资源分配和管理,使得满足所需的服务水平。服务水平协议(sla)规划和履行85提供根据sla预期未来需求的云计算资源的预安排和采购。
76.工作负载层90提供可以利用云计算环境的功能的示例。可以从该层提供的工作负荷和功能的示例包括:地图和导航91;软件开发和生命周期管理92;虚拟课堂教育交付93;数据分析处理94;事务处理95;以及服务协调器106。
77.本文描述的程序是基于它们在本发明的具体实施例中针对其实现的应用来识别的。然而,应当理解,本文中的任何特定程序术语仅为了方便而使用,并且因此本发明不应局限于仅在由这样的术语识别和/或暗示的任何特定应用中使用。
78.本发明可以是系统、方法、和/或计算机程序产品。计算机程序产品可包括其上具有用于使处理器执行本发明的各方面的计算机可读程序指令的计算机可读存储介质(或多个介质)。
79.计算机可读存储介质可以是能够保留和存储指令以供指令执行设备使用的任何有形设备。计算机可读存储介质可以是,例如但不限于,电子存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备、或者上述的任意合适的组合。计算机可读存储介质的更具体的示例的非穷尽列表包括以下各项:便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、静态随机存取存储器(sram)、便携式紧凑盘只读存储器(cd-rom)、数字通用盘(dvd)、记忆棒、软盘、诸如穿孔卡之类的机械编码设备或者凹槽中具有记录在其上的指令的凸起结构、以及上述各项的任何合适的组合。如本文所使用的计算机可读存储介质不应被解释为暂时性信号本身,例如无线电波或其他自由传播的电磁波、通过波导或其他传输介质传播的电磁波(例如,穿过光纤电缆的光脉冲)或通过电线发射的电信号。
80.本文所描述的计算机可读程序指令可以经由网络(例如,互联网、局域网、广域网和/或无线网络)从计算机可读存储介质下载至相应的计算/处理设备或下载至外部计算机或外部存储设备。网络可以包括铜传输电缆、光传输纤维、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配器卡或网络接口接收来自网络的计算机可读程序指令,并转发计算机可读程序指令以存储在相应计算/处理设备内的计算机可读存储介质中。
81.用于执行本发明的操作的计算机可读程序指令可以是汇编指令、指令集架构(isa)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或以一种或多种程序设计语言的任何组合编写的源代码或目标代码,这些程序设计语言包括面向对象的程序
设计语言(诸如smalltalk、c++等)和常规的过程式程序设计语言(诸如“c”程序设计语言或类似程序设计语言)。计算机可读程序指令可以完全地在用户计算机上执行、部分在用户计算机上执行、作为独立软件包执行、部分在用户计算机上部分在远程计算机上执行或者完全在远程计算机或服务器上执行。在后一种情况下,远程计算机可通过任何类型的网络(包括局域网(lan)或广域网(wan))连接至用户计算机,或者可连接至外部计算机(例如,使用互联网服务供应商通过互联网)。在一些实施例中,包括例如可编程逻辑电路、现场可编程门阵列(fpga)或可编程逻辑阵列(pla)的电子电路可以通过利用计算机可读程序指令的状态信息来使电子电路个性化来执行计算机可读程序指令,以便执行本发明的各方面。
82.本文参照根据本发明的实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
83.这些计算机可读程序指令可以被提供给通用计算机、专用计算机、或其他可编程数据处理装置的处理器以产生机器,这样使得经由计算机或其他可编程数据处理装置的处理器执行的指令创建用于实现流程图和/或框图的或多个框中所指定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置、和/或其他设备以特定方式工作,从而,其中存储有指令的计算机可读存储介质包括包含实现流程图和/或框图中的或多个方框中规定的功能/动作的方面的指令的制造品。
84.计算机可读程序指令还可以被加载到计算机、其他可编程数据处理装置、或其他设备上,以便使得在该计算机、其他可编程装置或其他设备上执行一系列操作步骤以产生计算机实现的过程,从而使得在该计算机、其他可编程装置、或其他设备上执行的指令实现流程图和/或框图的或多个框中所指定的功能/动作。
85.附图中的流程图和框图展示了根据本发明的不同实施例的系统、方法和计算机程序产品的可能实现方式的架构、功能和操作。对此,流程图或框图中的每个方框可表示包括用于实现指定的逻辑功能的一个或多个可执行指令的模块、片段或指令的一部分。在一些备选实现中,框中标注的功能可以不按照图中标注的顺序发生。例如,取决于所涉及的功能,连续示出的两个块实际上可以基本上同时执行,或者这些块有时可以以相反的顺序执行。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作或执行专用硬件与计算机指令的组合的专用的基于硬件的系统来实现。
86.已经出于说明的目的呈现了本发明的各个实施例的描述,但并不旨在是详尽的或限于所公开的实施例。在不背离本发明的范围和精神的情况下,许多修改和变化对于本领域普通技术人员来说是显而易见的。本文所使用的术语被选择来最好地解释实施例的原理、实际应用、或优于市场中所发现的技术的技术改进、或使得本领域普通技术人员能够理解本文所公开的实施例。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1