计算资源的调度方法、装置、计算机设备及存储介质与流程

文档序号:23151977发布日期:2020-12-04 13:47阅读:130来源:国知局
计算资源的调度方法、装置、计算机设备及存储介质与流程

本申请涉及云计算领域,特别是涉及一种计算资源的调度方法、装置、计算机设备和存储介质。



背景技术:

随着云计算不断发展以及边缘应用的快速增长,云边协同技术已成为新的研发热点。其中,云边协同平台在实现对空闲计算资源的充分利用的同时,也节约了资源需求方的资源使用成本。用户可以通过云边协同技术将应用或计算任务动态、便捷地部署在云服务商的资源设备上,从而相比于传统的云服务,可实现秒级调度,动态、灵活地收缩和扩容可用的计算资源,同时降低获取资源服务的成本。



技术实现要素:

基于此,本申请各示例性的实施例提供一种计算资源的调度方法、装置、计算机设备和存储介质。

本申请的一方面,提供一种计算资源的调度方法,所述云边协同平台包括配置数据库,计量信息数据库和区块链访问控制器,所述方法包括:通过所述区块链访问控制器将存储在所述配置数据库中的成功执行的历史调度指令上链至区块链平台;将存储在所述计量信息数据库中的验证过的第一历史计量信息发送至所述区块链访问控制器;将所述区块链访问控制器上的所述第一历史计量信息与所述区块链平台上存储的第二历史计量信息进行验证比对。

在一实施例中,所述成功执行的历史调度指令通过所述区块链访问控制器定时地发送至区块链平台。

在一实施例中,所述第一历史计量信息通过所述区块链访问控制器定量地发送至所述区块链访问控制器。

在一实施例中,所述云边协同平台还包括计量监控模块,所述方法还包括:通过所述监控计量模块监控计量操作以获取计量信息,并定时地将所述获取的计量信息发送至所述计量信息数据库中以形成所述第一历史计量信息。

在一实施例中,所述方法还包括:确定彼此匹配的用户终端的部署资源蓝图和云服务商终端的可提供资源蓝图;根据彼此匹配的所述部署资源蓝图和所述可提供资源蓝图,生成调度指令,并执行所述调度指令以执行资源调度;将所述调度指令存储至所述配置数据库。

在一实施例中,所述确定彼此匹配的部署资源蓝图和可提供资源蓝图的步骤,包括:根据所述用户终端发送的所述部署资源蓝图,确定与所述部署资源蓝图相匹配的可提供资源蓝图,并将所述用户终端发送的所述部署资源蓝图存储至所述配置数据库;或根据所述云服务商终端发送的所述可提供资源蓝图,确定与所述可提供资源蓝图相匹配的所述部署资源蓝图,并将所述云服务商终端发送的所述可提供资源蓝图存储至所述配置数据库。

在一实施例中,所述云边协同平台还包括违约记录数据库,所述方法还包括:当在所述资源调度中,所述云服务商终端、所述用户终端或所述云服务商平台发生违约行为时,将对应所述违约行为的违约信息存储至所述违约记录数据库;所述确定彼此匹配的所述用户终端的部署资源蓝图和所述云服务商终端的可提供资源蓝图的步骤,包括:当所述云服务商终端的所述违约信息大于第一阈值时,降低所述云服务商终端的匹配优先级;和/或当所述用户终端的所述违约信息大于第二阈值时,降低所述用户终端的匹配优先级。

在一实施例中,所述方法还包括:接收所述云服务商终端发送的所述可提供资源蓝图,并验证所述可提供资源蓝图的合法性。

在一实施例中,所述接收所述云服务商终端发送的所述可提供资源蓝图,并验证所述可提供资源蓝图的合法性的步骤,包括:接收由所述云服务商终端发送的云服务商签约请求,所述云服务商签约请求包括所述可提供资源蓝图;验证所述可提供资源蓝图的合法性,向所述云服务商终端返回所述合法性的验证结果;若所述可提供资源蓝图为合法,则通过所述区块链访问控制器监控所述可提供资源蓝图是否由所述云服务商终端上链至所述区块链平台并同时接收由所述云服务商终端发送的所述可提供资源蓝图以执行所述资源调度;若监控到所述可提供资源蓝图上链至所述区块链平台,则结束所述云服务商签约请求。

在一实施例中,所述方法还包括:接收所述用户终端发送的所述部署资源蓝图,并验证所述部署资源蓝图的合法性。

在一实施例中,所述接收所述用户终端发送的所述部署资源蓝图,并验证所述部署资源蓝图的合法性的步骤,包括:接收由所述用户终端发送的用户签约请求,所述用户签约请求包括所述部署资源蓝图;验证所述部署资源蓝图的合法性,向所述用户终端返回所述合法性的验证结果;若所述部署资源蓝图为合法,则通过所述区块链访问控制器监控所述部署资源蓝图是否由所述用户终端上链至所述区块链平台并同时接收由所述用户端终端发送的所述部署资源蓝图以执行所述资源调度;若监控到所述部署资源蓝图上链至所述区块链平台,则结束所述用户签约请求。

在一实施例中,所述方法还包括:接收所述云服务商终端发送的对应所述资源调度的计量信息,并验证所述计量信息是否合法。

在一实施例中,所述接收所述云服务商终端发送的对应所述资源调度的所述计量信息,并验证所述计量信息是否合法的步骤,包括:接收由所述云服务商终端发送的资源视图,所述资源视图包括所述计量信息;验证所述计量信息的合法性,并向所述云服务商终端返回所述合法性的验证结果,若所述计量信息为合法,则通过所述区块链访问控制器监控所述计量信息是否上链至所述区块链平台。

在一实施例中,所述方法还包括:当获取用户结算请求时,根据所述计量信息生成用户账单信息;将所述用户账单信息发送至所述用户终端;若接收到由所述用户终端发送的对应所述用户账单信息的用户转账交易,则通过所述区块链访问控制器将对应所述用户转账交易的用户结算信息广播至所述区块链平台,并结束所述用户结算请求。

在一实施例中,所述方法还包括:当获取云服务商结算请求时,根据所述计量信息生成云服务商账单信息;将所述云服务商账单信息发送至所述云服务商终端;若接收到由所述云服务商终端发送的对应所述云服务商账单信息的确认信息,则执行对应所述云服务商账单信息的云服务商转账交易;通过所述区块链访问控制器监控对应所述云服务商转账交易的云服务商结算信息是否上链至所述区块链平台,若监控到所述云服务商结算信息上链至所述区块链平台,则结束所述云服务商结算请求。

本申请的另一方面,提供一种计算资源的调度装置,设置于云边协同平台中,所述装置包括:配置数据库,用于存储合法的历史部署资源蓝图、合法的历史可提供资源蓝图与成功执行的历史调度指令;计量信息数据库,用于存储验证过的历史计量信息;以及区块链访问控制器,用于执行所述云边协同平台和区块链平台之间的交互。

本申请的再一方面,提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述各实施例的方法的步骤。

本申请的又一方面,提供一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现上述各实施例的方法的步骤。

上述计算资源的调度方法、装置、计算机设备和存储介质,通过在云边协同平台中设置区块链访问控制器,实现云边协同平台与区块链平台的交互。通过将存储在云边协同平台的配置数据库中成功执行的历史调度指令上链至区块链平台,并通过区块链访问控制器监控存储在在计量信息数据库中的验证过的第一历史计量信息与区块链平台上存储的由云服务商终端上链的区块链平台的第二历史计量信息是否一致,从而实现不可篡改的资源调度过程中所有数据的分布式存储,为用户终端、云服务商终端与云边协同平台的资源供需三方提供了资费结算的透明性与可信性,实现了重复利用空闲计算资源的同时,节约资源需求方的资源使用成本。

附图说明

图1为一个实施例中计算资源调度方法的应用环境图;

图2为一个实施例中计算资源的调度方法的流程示意图;

图3为一个实施例中计算资源的调度方法的流程示意图;

图4为一个实施例中计算资源的调度方法的流程示意图;

图5为一个实施例中云服务商终端的签约过程的上链的交互示意图;

图6为一个实施例中用户终端的签约过程的上链的交互示意图;

图7为一个实施例中云边协同平台的构建调度指令交易的上链的交互示意图;

图8为一个实施例中云服务商终端的资源视图的上链的交互示意图;

图9为一个实施例中用户终端的结算账单的上链的交互示意图;

图10为一个实施例中云服务商的结算账单的上链交互示意图;

图11为一个实施例中计算资源的调度系统的部署示意图;

图12为一个实施例中云边协同平台侧的区块链节点的示意图;

图13为一个实施例中云边协同平台的结构框图;

图14为一个实施例中计算机设备的内部结构图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

传统的计算资源的调度与资费结算由于通常由云边协同平台负责,所以无法向用户与云服务商保证调度的公平性与透明性。因此,在选择云服务或进行资费结算时,存在用户、云边协同平台、云服务商三者互不信任的问题,这在一定程度上制约了云边协同技术的发展。

本申请提供的计算资源的调度方法,可以应用于如图1所示的应用环境中。其中,用户终端300具有部署计算资源的需求,云服务商终端400可以提供计算资源。云边协同平台100分别与用户终端300和云服务商终端400通信,并且可以根据用户终端300的部署资源的需求查找并调度相匹配的云服务商终端400的可提供资源,以满足用户终端300的需求。可以理解地,云边协同平台100也可以根据云服务商终端400的可提供资源查找相匹配的用户终端300的部署资源的需求,并将可提供资源调度给所述用户终端300。

在图1的应用环境中,还设置有区块链平台200,即具有分布式存储节点结构的区块链节点的区块链模块。该区块链平台200用于记录资源调度过程中的调度信息以及资源调度的计量信息,以及用于在用户终端300或云服务商终端400与云边协同平台进行资源调度结算时提供相关数据验证。

下面将进一步结合图1,说明本实施例中云边协同平台100、区块链平台200、用户终端300和云服务商400的结构。

云边协同平台100包括平台设备110、区块链访问控制器120及平台服务端130。平台设备110包括调度器112、配置数据库114、监控模块116及计量信息数据库118。

调度器112用于根据调度指令对空闲资源进行调度交易,并将资源调度中的可提供资源蓝图、部署资源蓝图以及调度指令写入配置数据库114中。其中,部署资源蓝图指资源调度中用户终端300所需求的计算资源的参数,可提供资源蓝图是指资源调度中云服务商终端400可提供的计算资源的参数。

配置数据库114用于存储合法的历史部署资源蓝图、合法的历史可提供资源蓝图和成功执行过的历史调度指令,并将成功执行过的调度指令发送至区块链访问控制器120。配置数据库114为服务发现组件,例如可以为etcd,zookeeper和consul等中的一者。其中成功执行过的历史调度指令是指在过去的资源调度中使用过的部署资源蓝图、可提供资源蓝图和调度指令。用户终端300可以对区块链平台200进行监控,当监控到历史调度指令上链至区块链平台200后,验证用户终端300本地的历史调度指令与链上的历史调度指令是否一致。同样地,云服务商终端400也可以对区块链平台200进行监控,当监控到历史调度指令上链至区块链平台200后,验证云服务商终端400本地的历史调度指令与链上的历史调度指令是否一致。

可选地,成功执行过的历史调度指令还可以定时地由配置数据库114发送至区块链访问控制器120并进而由区块链访问控制器120上链至区块链平台200。

监控模块116用于监控计量操作以获取计量信息,并将所述获取的计量信息发送至计量信息数据库118。监控模块116可以为监控系统,例如prometheus。其中,计量操作是指在资源调度过程中,云服务商终端400对计算资源的调度的计量操作,包括但不限于:对计算资源提供时长的计量、对计算资源提供时的流量的计量和对计算资源的提供总容量的计量。计量信息是指计量操作所产生的计量信息,包括但不限于:计算资源提供时长、计算资源提供时的流量和计算资源的提供总容量。

可选地,所获取的计量信息还可以由监控模块116定时地发送至计量信息数据库118。

计量信息数据库118用于存储计量信息,并定量地将存储的计量信息发送至区块链访问控制器120。由于存储的计量信息在单位时间内可能大小不一,因此采用定量的方式将计量信息发送至区块链访问控制器120可以提高每次发送的效率。计量信息数据库118可以是一种时间序列数据库,例如可以采用阿里云的时间序列数据库(timesseriesdatabase,tsdb)。

区块链访问控制器120用于实现平台设备110与区块链平台200的交互,包括将平台设备110的数据上链至区块链平台200或监控和获取区块链平台200上的链上数据。

平台服务端130用于业务流程的展示、注册、认证、签约等。平台服务端130一般可以采用c/s架构。

区块链平台200包括区块链节点模块210、智能合约模块220以及ca认证平台230。区块链节点模块210具有分布式数据结构,包括区块链网络中的节点。这些节点由云边协同平台、用户终端、云服务商终端共同维护。

智能合约模块220具有身份校验及授权鉴权模块、签约模块、记账模块、结算模块。身份校验及授权鉴权模块用于验证用户的读写权限。签约模块用于执行签约流程。记账模块用于在资源调度过程中记录调度信息以及计量结算信息。结算模块用于对用户终端300或云服务商终端400和云边协同平台100之间的账单进行结算。

可选地,区块链平台100还可以包括惩处模块,该惩处模块用于记录用户终端300、云服务商终端400和云边协同平台100的违约信息。违约信息对应的违约行为包括但不限于,用户终端300未按时按额进行资费结算;云服务商终端400未提供约定的计算资源或在提供计算资源期间出现断链等情况;以及云边协同平台100为调度用户终端300调度的云服务商终端400的计算资源不能满足用户终端300的需求等。

用户终端300指的是计算资源需求方。用户终端300可以包括用户客户端,该用户客户端用于分别与区块链平台200和云边协同平台100进行交互。

云服务商终端400指的是计算资源提供方。云服务商终端400可以包括资源设备云服务商客户端,该云服务商客户端用于分别与区块链平台200和云边协同平台100进行交互。资源设备用于提供计算资源。

请结合图1参照图2,如图2所示,提供了一种计算资源的调度方法,包括以下步骤:

步骤s100,通过所述区块链访问控制器将存储在所述配置数据库中的成功执行的历史调度指令上链至区块链平台。

其中,成功执行过的历史调度指令是指在过去的资源调度使用过的调度指令。

具体地,存储在配置数据库114中的成功执行的历史调度指令由配置数据库114发送至区块链访问控制器120。区块链平台200进行身份许可校验与交易校验。若身份许可校验和交易校验通过,则将数据上链至区块链节点模块210。

可选地,配置数据库114可以定时地将这些数据传送至区块链访问控制器120,区块链访问控制器120再将数据上链至区块链平台200上从而在资源调度过程中并行地上链数据,从而实现资源调度和数据上链的异步并行执行,提高数据的上链效率和资源调度的执行效率。

步骤s120,通过所述区块链访问控制器将存储在所述计量信息数据库中的验证过的第一历史计量信息发送至所述区块链访问控制器用于与所述区块链平台上存储的第二历史计量信息进行验证。并将所述区块链访问控制器上的所述第一历史计量信息与所述区块链平台上存储的第二历史计量信息进行验证比对。

计量信息是指计量操作所产生的用于进行资费计算的计量信息,包括但不限于:计算资源提供时长、计算资源提供时的流量和计算资源的提供总容量。

具体地,存储在计量信息数据库118中的计量信息由计量信息数据库118发送至区块链访问控制器120。

可选地,计量信息数据库118可以定量地将这些数据发送至区块链访问控制器120,提高了计量信息数据库118与区块链访问控制器120之间的通信效率。

上述计算资源的调度方法中,通过在云边协同平台中设置区块链访问控制器,实现云边协同平台与区块链平台的交互。通过将存储在云边协同平台的配置数据库中合法的成功执行的历史调度指令以及存储在在计量信息数据库中的验证过的历史计量信息传送至区块链访问控制器用于一致性验证,从而实现不可篡改的资源调度过程中所有数据的分布式存储,为区块链平台与云边协同平台的资源供需双方提供了资费结算的透明性与可信性,实现了重复利用空闲计算资源的同时,节约资源需求方的资源使用成本。

在另一个实施例中,云边协同平台100还可以包括监控模块116。监控模块116监控资源调度的结算过程,并将对应的计量信息发送至计量信息数据库118用于存储。

请参照图3,图3示出的计算资源的调度方法包括以下步骤。

步骤s200,确定彼此匹配的用户终端的部署资源蓝图和云服务终端的可提供资源蓝图。

其中,彼此匹配的用户终端300的部署资源蓝图和云服务终端400的可提供资源蓝图是指,在一个调度指令中相对应的部署资源蓝图和可提供资源蓝图。部署资源蓝图和可提供资源蓝图均为在云边协同平台进行过签约验证的资源蓝图。

具体地,在确定彼此匹配的用户终端300的部署资源蓝图和云服务终端400的可提供资源蓝图时,需要考虑到可提供资源蓝图是否能满足部署资源蓝图,以及可提供资源蓝图匹配给部署资源蓝图是否会造成资源的浪费。

可以理解的是,步骤s200可以包括根据用户终端300发送的部署资源蓝图,来确定与该部署资源蓝图相匹配的可提供资源蓝图,并将用户终端300发送的部署资源蓝图存储至配置数据库114;或根据云服务商终端400发送的可提供资源蓝图,确定与可提供资源蓝图相匹配的部署资源蓝图,并将云服务商终端400发送的可提供资源蓝图存储至配置数据库114。

步骤s220,根据彼此匹配的部署资源蓝图和可提供资源蓝图,生成调度指令,并执行该调度指令以执行资源调度。

步骤s240,将调度指令存储至配置数据库。

具体地,根据相匹配的部署资源蓝图和可提供资源蓝图生成调度指令,该调度指令将云服务商客户端400的计算资源按照可提供资源蓝图调度给用户终端300,以实现资源调度。

在一个实施例中,调度指令可以在资源调度完成或者失败后存储至配置数据库114。因此,可以理解的是,存储在配置数据库114中的调度指令包括调度失败的调度指令和调度成功的调度指令。

请参照图4,图4示出的计算资源的调度方法包括以下步骤。

步骤s300,当在资源调度中,云服务商终端、用户终端或云服务商平台发生违约行为时,将对应违约行为的违约信息存储至所述违约记录数据库。

如前所述,违约行为可以包括用户终端300未按时按额进行资费结算;云服务商终端400未提供约定的计算资源或在提供计算资源期间出现断链等情况;以及云边协同平台100为调度用户终端300调度的云服务商终端400的计算资源不能满足用户终端300的需求等。本领域的技术人员应当知晓对云服务中各方的各种违约行为,本发明对此不作特别限定。

具体地,在云服务商终端400、用户终端300或云服务商平台100一方在资源调度中发生违约行为时,该违约行为将被记录在云边协同平台的违约记录数据库中。可以理解的是,该违约记录数据库也可以定时地或定量地将违约信息通过区块链访问控制器120上传至区块链平台200,并在通过区块链平台200的身份许可验证和交易验证后,上链至区块链平台200。

步骤s320,当云服务商终端的违约信息大于第一阈值时,降低云服务商终端的匹配优先级。

对应于违约行为的违约信息可以是违约行为的量化值,例如,云服务商终端400提供云服务期间的断链次数、实际提供的计算资源和签约的可提供资源的差值,用户终端300应付资费的支付拖欠天数,云服务商平台100错误匹配部署资源蓝图和可提供资源蓝图的次数等。当这些量化值大于一阈值时,则对相应执行主体实施惩罚措施。例如,在步骤s320中,当第一阈值为3次,云服务商终端400的违约信息为在提供云服务期间断链了4次,即云服务商终端400的违约信息大于第一阈值,则将该云服务商终端400的匹配优先级降低,即在下次匹配时优先匹配其他具有更高优先级的云服务商终端400。

步骤s340,当所述用户终端的所述违约信息大于第二阈值时,降低所述用户终端的匹配优先级。

与步骤s330相似地,在步骤s340中,例如当用户终端300的违约信息为应付资费的支付拖欠天数累计为10天,而第二阈值是5天,则降低用户终端300的匹配优先级。

可以理解的是,上述的违约信息也可以是将各种违约行为量化为信用值,并根据信用值来调节匹配优先级,本申请对此不作特别的限定。

可选地,也可以对云边协同平台100的违约信息进行记录。在发现云边协同平台100的违约信息大于特定阈值时,将对对应的用户终端300或云服务商平台400进行补偿。

应该理解的是,虽然图2-4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。

请参照图5,图5为一个实施例中云服务商终端的签约过程的上链的交互示意图。

云服务商终端400的可提供资源蓝图的签约过程,是指将云服务商终端40提供的可提供资源蓝图在云边协同平台100中进行验证。在本实施例中,若通过云边协同平台的验证,云服务商终端400就可以将该可提供资源蓝图广播至区块链平台200。在通过区块链平台200的身份许可校验和校验后,该可提供资源蓝图上链至区块链平台200。

具体地,云服务商终端400发送包括可提供资源参数以及云服务商终端的签名的可提供资源蓝图至云边协同平台100,云边协同平台100对该可提供资源蓝图进行语法验证以及逻辑验证,其中,语法验证指验证数据的语法正确性,逻辑验证指可提供资源参数是否合理。若通过语法验证和逻辑验证,则云边协同平台100对该可提供资源参数进行签名,并将合法的验证结果返回给云服务商终端400。若未通过语法验证和逻辑验证,则云边协同平台100将不合法的验证结果返回给云服务商终端400。

接着,云服务商终端400接收验证结果。若返回的验证结果为合法,根据该可提供资源蓝图构建为交易,并将该可提供资源蓝图广播至区块链平台200,在通过区块链平台200的身份许可校验和交易校验后上链至区块链平台200。若返回的验证结果为不合法,则云服务商终端400修改错误并重复签约过程。

在云服务商终端400的可提供资源蓝图签约后,云边协同平台100若接收到云服务商终端400发送可提供资源蓝图,则针对该签约过的可提供资源蓝图进行资源调度,并同时通过区块链访问控制器120监控区块链平台120上的数据,验证收到的签约过的可提供资源蓝图是否与区块链平台200上之前上链的该可提供资源蓝图一致,若不一致,则以区块链平台200上的可提供资源蓝图为准。由于区块链平台200,使得云服务商终端400和云边协同平台100之间的数据传输更加可靠,增加了资源调度的资费结算的透明性与可信性。

在该签约过程中,所述计算资源的调度方法还可以包括:步骤s400,接收所述云服务商终端发送的所述可提供资源蓝图,并验证所述可提供资源蓝图的合法性。

具体地,步骤s400可以包括以下步骤。

步骤s420,接收由所述云服务商终端发送的云服务商签约请求,所述云服务商签约请求包括所述可提供资源蓝图。

步骤s440验证所述可提供资源蓝图的合法性,向所述云服务商终端返回所述合法性的验证结果。

步骤s460,若所述可提供资源蓝图为合法,则通过所述区块链访问控制器监控所述可提供资源蓝图是否由所述云服务商终端上链至所述区块链平台并同时接收由所述云服务商终端发送的所述可提供资源蓝图以执行所述资源调度。

步骤s480,若监控到所述可提供资源蓝图上链至所述区块链平台,则结束所述云服务商签约请求。

图6为一个实施例中用户终端的签约过程的上链的交互示意图。图6的用户终端300的部署资源蓝图的签约过程与图5的云服务商终端400的可提供资源蓝图的签约过程相似。不同之处在于图5是云边协同平台100、云服务商终端400和区块链平台200之间的交互,而图6是云边协同平台100、用户终端300和区块链平台200之间的交互,因此在这里不在赘述。

在该签约过程中,所述计算资源的调度方法还可以包括:步骤s500,接收所述用户终端发送的所述部署资源蓝图,并验证所述部署资源蓝图的合法性。

具体地,步骤s500可以包括以下步骤。

步骤s520,接收由所述用户终端发送的用户签约请求,所述用户签约请求包括所述部署资源蓝图。

步骤s540,验证所述部署资源蓝图的合法性,向所述用户终端返回所述合法性的验证结果。

步骤s560,若所述部署资源蓝图为合法,则通过所述区块链访问控制器监控所述部署资源蓝图是否由所述用户终端上链至所述区块链平台并同时接收由所述用户端终端发送的所述部署资源蓝图以执行所述资源调度。

步骤s580,若监控到所述部署资源蓝图上链至所述区块链平台,则结束所述用户签约请求。

图7为一个实施例中云边协同平台的构建调度指令交易的上链的交互示意图。云边协同平台100的构建调度指令交易的过程指将云边协同平台中的调度指令构建为交易,该交易中包含调度指令及平台签名。可选地,云边协同平台100可以定时地构建调度指令交易。当调度指令交易构建完成后,云边协同平台100将该调度指令交易广播至区块链平台200。区块链平台200通过身份许可校验和交易校验后,将调度指令交易上链至区块链平台200。同时,用户终端300和云服务商终端400监控区块链平台200,验证该调度指令交易是否上链至区块链平台200。

图8为一个实施例中云服务商终端的资源视图的上链的交互示意图。在该资源视图的上链过程中,云服务商终端400分别向用户终端300和云边协同平台100发送包含云服务商终端的签名的资源视图。所述资源视图指示出了云服务商终端的资源设备的计量信息的使用情况的数据视图。用户终端400和云边协同平台100在收到资源视图后,分别验证资源视图的计量信息是否正确,如正确则进行签名,并返回验证结果给所述云服务商终端400。云服务商终端400收到用户终端300的签名的验证结果和云边协同平台100的签名的验证结果后,将包含计量信息、云边协同平台的签名、云服务商终端签名的该资源视图广播至区块链平台200。区块链平台200对该资源视图进行身份许可校验和交易校验。当身份许可校验和交易校验通过时,将资源视图上链至区块链平台200。同时,用户终端300和云服务商终端400监控该资源视图是否上链至区块链平台200,并验证上链的资源视图是否正确。

在该资源视图的上链过程中,计算资源的调度方法还可以包括步骤:步骤s600,接收所述云服务商终端发送的对应所述资源调度的计量信息,并验证所述计量信息是否合法。

具体地,步骤s600可以包括以下步骤。

步骤s620,接收由所述云服务商终端发送的资源视图,所述资源视图包括所述计量信息。

步骤s640,验证所述计量信息的合法性,并向所述云服务商终端返回所述合法性的验证结果,若所述计量信息为合法,则通过所述区块链访问控制器监控所述计量信息是否上链至所述区块链平台。

图9为一个实施例中用户终端的结算账单的上链的交互示意图。在该实施例中,云边协同平台100发起结算请求,并生产账单信息,账单信息中包含云别协同平台的签名。用户终端300若同意该账单,则与云边协同平台100进行转账。转账成功后,云边协同平台100将转账的信息(包含账单、转账凭证)广播至区块链平台200。同时,用户终端300和云边协同平台100监控该转账的信息是否上链至区块链平台200。

在该结算账单的上链过程中,该计算资源的调度方法还可以包括以下步骤。

步骤s700,当获取用户结算请求时,根据所述计量信息生成用户账单信息。

步骤s720,将所述用户账单信息发送至所述用户终端。

步骤s740,若接收到由所述用户终端发送的对应所述用户账单信息的用户转账交易,则通过所述区块链访问控制器将对应所述用户转账交易的用户结算信息广播至所述区块链平台,并结束所述用户结算请求。

图10为一个实施例中云服务商终端的结算账单的上链交互示意图。图10的云服务商终端400的结算账单的上链过程与图9的用户终端300的结算账单的上链过程相似。不同之处在于图9是云边协同平台100、用户终端300和区块链平台200之间的交互,而图10是云边协同平台100、云服务商终端400和区块链平台200之间的交互,因此在这里不在赘述。

在该结算账单的上链过程中,云边协同平台还可以包括以下步骤。

步骤s800,当获取云服务商结算请求时,根据所述计量信息生成云服务商账单信息。

步骤s820,将所述云服务商账单信息发送至所述云服务商终端。

步骤s840,若接收到由所述云服务商终端发送的对应所述云服务商账单信息的确认信息,则执行对应所述云服务商账单信息的云服务商转账交易;

步骤s860,通过所述区块链访问控制器监控对应所述云服务商转账交易的云服务商结算信息是否上链至所述区块链平台,若监控到所述云服务商结算信息上链至所述区块链平台,则结束所述云服务商结算请求。

需要注意的是,步骤s860中的云服务商结算信息是由云服务商终端400发送至区块链平台200的。

图11为一个实施例中计算资源的调度系统的部署示意图。区块链平台选用hyperledgerfabric,包含三类组织:云边协同平台、云服务商以及用户,每个组织都需部署peer节点,所有组织属于同一通道(channel)内。其中orderer节点由云边协同平台、云服务商提供,对用户为可选项。智能合约各个模块由链码实现。

图12为一个实施例中云边协同平台侧的区块链节点的示意图。作为云边协同平台,在平台初始化时需要至少3个orderer的节点(raft共识算法要求每个通道需要的orderer节点数为单数),以及2个peer节点(peer节点的数量需要为偶数),以确保区块链系统可以正常运行。运行之后,云边协同平台100可以适当减少orderer节点和peer节点的持有量,同时将初始的链码安装并实例化。

在一个实施例中,如图13所示,提供了一种计算资源的调度装置,包括:

配置数据库,用于存储成功执行的历史调度指令;

计量信息数据库,用于存储验证过的历史计量信息;以及

区块链访问控制器,用于执行所述云边协同平台和区块链平台之间的交互。

其中,配置数据库114和计量信息数据库118分别与区块链访问控制器120通信连接,以将存储在所述配置数据库114中的成功执行的历史调度指令和储在所述计量信息数据库中的验证过的历史计量信息以定时或定量的方式发送至区块链访问控制器。区块链访问控制器120用于执行所述云边协同平台和区块链平台之间的交互。

关于计算资源的调度装置的具体限定可以参见上文中对于计算资源的调度方法的限定,在此不再赘述。上述计算资源的调度装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图14所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的各数据库用于存储用于计算资源调度的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种计算资源的调动方法。

本领域技术人员可以理解,图14中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

通过所述区块链访问控制器将存储在所述配置数据库中的成功执行的历史调度指令上链至区块链平台;

通过所述区块链访问控制器将存储在所述计量信息数据库中的验证过的历史计量信息发送至区块链访问控制器120。

关于计算机可读存储介质的具体限定可以参见上文中对于计算资源的调度方法的限定,在此不再赘述。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1