一种EOS区块链超级节点的架构及其实现方法技术

技术编号:20494023 阅读:46 留言:0更新日期:2019-03-02 23:39
本发明专利技术公开了一种EOS区块链超级节点的架构及其实现方法,包括用于提供EOS区块链中区块生产的区块生产模块、用于智能合约调度分发的合约调度模块、以及用于执行智能合约并与所述合约调度模块相连的多台智能合约服务器。所述合约调度模块包括注册中心ETCD、用于智能合约服务器注册的注册接口、用于智能合约服务器注销的注销接口、用于智能合约服务器更新的更新接口和用于智能合约服务器查询的查询接口;所述注册接口、注销接口、更新接口和查询接口与注册中心ETCD相连。本发明专利技术解决了智能合约服务器内存资源瓶颈的问题,提高了资源的利用率。

An EOS Block Chain Super Node Architecture and Its Implementation

The invention discloses an architecture of EOS block chain super node and its implementation method, including block production module for providing block production in EOS block chain, contract dispatching module for intelligent contract dispatching and distribution, and multiple intelligent contract servers for executing intelligent contracts and connecting with the contract dispatching module. The contract scheduling module includes registry ETCD, registration interface for intelligent contract server registration, cancellation interface for intelligent contract server cancellation, update interface for intelligent contract server update and query interface for intelligent contract server query; the registration interface, cancellation interface, update interface and query interface are connected with registry ETCD. The invention solves the bottleneck problem of memory resources of intelligent contract server and improves the utilization rate of resources.

【技术实现步骤摘要】
一种EOS区块链超级节点的架构及其实现方法
本专利技术涉及区块链领域,具体地说,是涉及一种EOS区块链超级节点的架构及其实现方法。
技术介绍
由于智能合约有着处理交易时效率更高,不可逆转,安全的交易以及全自动化流程的优点,近年来得到了广泛的关注以及快速的发展。目前EOS区块链的同一个节点上既要担负区块生产的任务,也要担负执行智能合约的任务,这两个功能是部署在同一台物理主机上。这种架构方式,存在四个缺点:1.随着未来智能合约的爆发式增长,智能合约的存储和访问都会对节点的内存资源造成极大的压力,将会导致交易拥堵或延期执行,直到内存耗尽存在节点瘫痪的风险。2.要扩展一个超级节点的内存资源,其花费的成本高昂。3.由于内存需求不断增长,而单台节点的内存不能无限增长,存在资源瓶颈。4.单个节点的计算能力有限,无法应对大量合约的并行执行。如何对以上缺点进行解决优化,是相关技术人员所要考虑的问题。
技术实现思路
本专利技术的目的在于提供一种EOS区块链超级节点的架构及其实现方法,解决智能合约服务器内存资源瓶颈的问题,提高资源利用率。为实现上述目的,本专利技术采用的技术方案如下:一种EOS区块链超级节点的架构,包括用于提供EOS区块链中区块生产的区块生产模块、用于智能合约调度分发的合约调度模块、以及用于执行智能合约并与所述合约调度模块相连的多台智能合约服务器。所述合约调度模块包括注册中心ETCD、用于智能合约服务器注册的注册接口、用于智能合约服务器注销的注销接口、用于智能合约服务器更新的更新接口和用于智能合约服务器查询的查询接口;所述调度分发模块、注册接口、注销接口、更新接口和查询接口与注册中心ETCD相连。一种EOS区块链超级节点的架构的实现方法,包括以下步骤:(1)每一个在线智能合约服务器通过注册接口在注册中心ETCD中注册资源信息,注册中心ETCD将其资源信息进行保存;(2)超级节点的区块生产模块接收到外部客户端发送的智能合约访问请求,其调度分发模块根据调度策略检索注册中心ETCD中已注册的智能合约服务器,查找出可以执行该智能合约访问请求的智能合约服务器,并将访问请求转发给查找到的智能合约服务器;(3)接收到智能合约访问请求的智能合约服务器完成智能合约访问请求,并把完成的智能合约访问请求的结果和相关数据返回给区块生产模块;(4)区块生产模块将智能合约访问请求的结果和相关数据返回给外部客户端,并生成相应的区块存储到区块链的区块数据库中,实现外部客户端对智能合约的访问服务。进一步地,所述步骤(1)中注册的资源信息包括硬件资源数据信息,提供的智能合约服务信息,以及以往执行合约的效率信息。进一步地,所述步骤(2)中的调度策略包括效率优先算法和哈希算法。进一步地,当智能合约服务器退出时,通过合约调度模块的注销接口进行注销;当智能合约服务器有硬件资源数据信息更改、提供的智能合约服务信息更改时,通过合约调度模块的更新接口更新原有的信息。进一步地,区块生产模块使用外网IP负责对外部客户端收发智能合约访问请求,使用内部IP和各个智能合约服务器通信,并通过高质量局域网与各个智能合约服务器进行请求和处理。进一步地,所述合约调度模块定期查询注册中心ETCD的在线智能合约服务器的信息,当发现在线智能合约服务器有变更时,将这些信息同步变更到智能合约服务器本地缓存配置中。与现有技术相比,本专利技术具有以下有益效果:(1)本专利技术通过EOS区块链上区块生产模块和智能合约服务的分开部署,并设置用于智能合约调度分发的合约调度模块,把请求分发到其他智能合约服务器。这样,把原来单台服务器的资源要求分散到多台主机,不但有效解决了内存资源瓶颈的问题,也降低了资源扩展的成本,提高了部署的效率。(2)本专利技术通过合约调度模块解决了智能合约请求的分发问题,设立注册中心ETCD,其智能合约服务器在注册中心ETCD进行注册,通过调度策略实现智能合约调度分发给智能合约服务器,其调度策略算法科学快捷,可以单独选择一种也可以组合使用,对资源进行了高效合理的利用。附图说明图1为本专利技术超级节点架构的结构示意图。图2为本专利技术超级节点架构的实现原理框图。具体实施方式下面结合附图说明和实施例对本专利技术作进一步说明,本专利技术的方式包括但不仅限于以下实施例。实施例如图1和图2所示,本专利技术公开的一种EOS区块链超级节点的架构,包括用于提供EOS区块链中区块生产的区块生产模块、用于智能合约调度分发的合约调度模块、以及用于执行智能合约并与所述合约调度模块相连的多台智能合约服务器。所述合约调度模块包括注册中心ETCD、用于智能合约服务器注册的注册接口、用于智能合约服务器注销的注销接口、用于智能合约服务器更新的更新接口和用于智能合约服务器查询的查询接口;所述调度分发模块、注册接口、注销接口、更新接口和查询接口与注册中心ETCD相连。一种EOS区块链超级节点的架构的实现方法,包括以下步骤:(1)每一个在线智能合约服务器通过注册接口在注册中心ETCD中注册资源信息,注册中心ETCD将其资源信息进行保存;(2)超级节点的区块生产模块接收到外部客户端发送的智能合约访问请求,其调度分发模块根据调度策略检索注册中心ETCD中已注册的智能合约服务器,查找出可以执行该智能合约访问请求的智能合约服务器,并将访问请求转发给查找到的智能合约服务器;(3)接收到智能合约访问请求的智能合约服务器完成智能合约访问请求,并把完成的智能合约访问请求的结果和相关数据返回给区块生产模块;(4)区块生产模块将智能合约访问请求的结果和相关数据返回给外部客户端,并生成相应的区块存储到区块链的区块数据库中,实现外部客户端对智能合约的访问服务。所述步骤(1)中注册的资源信息包括硬件资源数据信息,提供的智能合约服务信息,以及以往执行合约的效率信息。所述步骤(2)中的调度策略包括效率优先算法和哈希算法。当智能合约服务器退出时,通过合约调度模块的注销接口进行注销;当智能合约服务器有硬件资源数据信息更改、提供的智能合约服务信息更改时,通过合约调度模块的更新接口更新原有的信息。区块生产模块使用外网IP负责对外部客户端收发智能合约访问请求,使用内部IP和各个智能合约服务器通信,并通过高质量局域网与各个智能合约服务器进行请求和处理。所述合约调度模块定期查询注册中心ETCD的在线智能合约服务器的信息,当发现在线智能合约服务器有变更时,将这些信息同步变更到智能合约服务器本地缓存配置中。本专利技术通过上述设计,合约调度模块的调度分发模块根据现有的智能合约请求,根据调度策略把请求分发到其他智能合约服务器,把原本单个智能合约服务器的资源要求分散到了多个智能合约服务器,有效地解决了智能合约服务器内存资源瓶颈的问题,提高了资源利用率。上述实施例仅为本专利技术的优选实施方式之一,不应当用于限制本专利技术的保护范围,但凡在本专利技术的主体设计思想和精神上做出的毫无实质意义的改动或润色,其所解决的技术问题仍然与本专利技术一致的,均应当包含在本专利技术的保护范围之内。本文档来自技高网...

【技术保护点】
1.一种EOS区块链超级节点的架构,其特征在于,包括用于提供EOS区块链中区块生产的区块生产模块、用于智能合约调度分发的合约调度模块、以及用于执行智能合约并与所述合约调度模块相连的多台智能合约服务器。

【技术特征摘要】
1.一种EOS区块链超级节点的架构,其特征在于,包括用于提供EOS区块链中区块生产的区块生产模块、用于智能合约调度分发的合约调度模块、以及用于执行智能合约并与所述合约调度模块相连的多台智能合约服务器。2.根据权利要求1所述的一种EOS区块链超级节点的架构,其特征在于,所述合约调度模块包括调度分发模块、注册中心ETCD、用于智能合约服务器注册的注册接口、用于智能合约服务器注销的注销接口、用于智能合约服务器更新的更新接口和用于智能合约服务器查询的查询接口;所述调度分发模块、注册接口、注销接口、更新接口和查询接口分别与注册中心ETCD相连。3.根据权利要求2所述的一种EOS区块链超级节点的架构的实现方法,其特征在于,包括以下步骤:(1)每一个在线智能合约服务器通过注册接口在注册中心ETCD中注册资源信息,注册中心ETCD将其资源信息进行保存;(2)超级节点的区块生产模块接收到外部客户端发送的智能合约访问请求,其调度分发模块根据调度策略检索注册中心ETCD中已注册的智能合约服务器,查找出可以执行该智能合约访问请求的智能合约服务器,并将访问请求转发给查找到的智能合约服务器;(3)接收到智能合约访问请求的智能合约服务器完成智能合约访问请求,并把完成的智能合约访问请求的结果和相关数据返回给区块生产模块;(4)区块生产模块将智能合约访问请求的结果和相关数据返回...

【专利技术属性】
技术研发人员:苗政委户从慧陈纪周
申请(专利权)人:陕西医链区块链集团有限公司
类型:发明
国别省市:陕西,61

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

1