CN110704099A - 联盟链的构建方法、装置和电子设备 - Google Patents

联盟链的构建方法、装置和电子设备 Download PDF

Info

Publication number
CN110704099A
CN110704099A CN201910959938.9A CN201910959938A CN110704099A CN 110704099 A CN110704099 A CN 110704099A CN 201910959938 A CN201910959938 A CN 201910959938A CN 110704099 A CN110704099 A CN 110704099A
Authority
CN
China
Prior art keywords
configuration
target
configuration file
file
federation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910959938.9A
Other languages
English (en)
Other versions
CN110704099B (zh
Inventor
李鹏飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Neusoft Wang Hai Technology Co Ltd
Original Assignee
Beijing Neusoft Wang Hai Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Neusoft Wang Hai Technology Co Ltd filed Critical Beijing Neusoft Wang Hai Technology Co Ltd
Priority to CN201910959938.9A priority Critical patent/CN110704099B/zh
Publication of CN110704099A publication Critical patent/CN110704099A/zh
Application granted granted Critical
Publication of CN110704099B publication Critical patent/CN110704099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本申请涉及信息处理技术领域,公开了一种联盟链的构建方法、装置、电子设备及计算机可读存储介质,联盟链的构建方法包括:接收用户输入的配置参数,根据所述配置参数和预设的配置模板生成相应的配置文件;其中,所述配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;根据所述联盟名称、所述开发框架的数量和所述分布式发布订阅消息系统的数量,设置用于存储所述配置文件的运行文件的存储路径;将所述配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于所述存储路径进行存储,以构建所述目标联盟链。本申请的联盟链的构建方法可以提高联盟链的构建效率。

Description

联盟链的构建方法、装置和电子设备
技术领域
本申请涉及区块链技术领域,具体而言,本申请涉及一种联盟链的构建方法、装置和电子设备。
背景技术
联盟链(alliance chain),是一种用于机构间的区块链;区块链(Blockchain),本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性和生成下一个区块。
现有的联盟链的构建通常是通过书写大量的配置文件,以安装许多个区块链的底层服务,这种方式构建效率低,且一旦构建区块链的过程中出现参数变动时,往往需要重新书写配置文件,需要耗费更多的时间。
发明内容
本申请的目的旨在至少能解决上述的技术缺陷之一,特提出以下技术方案:
第一方面,提供了一种联盟链的构建方法,包括:
接收用户输入的配置参数,根据配置参数和预设的配置模板生成相应的配置文件;其中,配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;
根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径;
将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链。
在第一方面的可选实施例中,接收用户输入的配置参数的步骤之前,还包括:
获取样本配置参数和对应的样本配置文件,根据样本配置参数和样本配置文件之间的对应关系,构建配置模板。
在第一方面的可选实施例中,根据配置参数和预设的配置模板生成相应的配置文件的步骤,包括:
将配置参数输入预设的配置模板中得到目标配置模板,基于目标配置模板得到yaml格式的配置文件;
将yaml格式的配置文件进行格式转换,得到json格式的配置文件。
在第一方面的可选实施例中,根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径的步骤,包括:
在预设的初始存储路径下设置以联盟名称命名的存储子路径;
在存储子路径下设置与开发框架的数量相同的开发框架的存储路径,以存储与开发框架对应的运行文件;
在存储子路径下设置与分布式发布订阅消息系统的数量相同的分布式发布订阅消息系统的存储路径,以存储与分布式发布订阅消息系统对应的运行文件。
在第一方面的可选实施例中,将配置文件输入预设的容器编排引擎中运行的步骤,包括:
将json格式的配置文件输入预设的容器编排引擎中,调用容器编排引擎的应用程序编程接口,在容器编排引擎中创建联盟名称的命名空间、开发框架的集群服务和分布式发布订阅消息系统的集群服务。
在第一方面的可选实施例中,还包括:
获取用于启用新增服务的启用参数,根据启用参数和目标配置模板,基于目标联盟链启用新增服务。
在第一方面的可选实施例中,根据启用参数和目标配置模板,基于目标联盟链启用新增服务的步骤,包括:
根据启用参数和目标配置模板生成与新增服务对应的新增配置文件;
将新增配置文件输入容器编排引擎中运行,以基于目标联盟链启用新增服务。
第二方面,提供了一种联盟链的构建装置,包括:
接收模块,用于接收用户输入的配置参数,根据配置参数和预设的配置模板生成相应的配置文件;其中,配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;
设置模块,用于根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量设置用于存储配置文件的运行文件的存储路径;
运行模块,用于将配置文件输入预设的容器编排引擎中运行,使得到的运行文件基于存储路径进行存储,以构建目标联盟链。
在第二方面的可选实施例中,联盟链的构建装置,还包括:
模板获取模块,用于获取样本配置参数和对应的样本配置文件,根据样本配置参数和样本配置文件之间的对应关系,构建配置模板。
在第二方面的可选实施例中,接收模块在根据配置参数和预设的配置模板生成相应的配置文件时,具体用于:
将配置参数输入预设的配置模板中得到目标配置模板,基于目标配置模板得到yaml格式的配置文件;
将yaml格式的配置文件进行格式转换,得到json格式的配置文件。
在第二方面的可选实施例中,设置模块在根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径时,具体用于:
在预设的初始存储路径下设置以联盟名称命名的存储子路径;
在存储子路径下设置与开发框架的数量相同的开发框架的存储路径,以存储与开发框架对应的运行文件;
在存储子路径下设置与分布式发布订阅消息系统的数量相同的分布式发布订阅消息系统的存储路径,以存储与分布式发布订阅消息系统对应的运行文件。
在第二方面的可选实施例中,运行模块在将配置文件输入预设的容器编排引擎中运行时,具体用于:
将json格式的配置文件输入预设的容器编排引擎中,调用容器编排引擎的应用程序编程接口,在容器编排引擎中创建联盟名称的命名空间、开发框架的集群服务和分布式发布订阅消息系统的集群服务。
在第二方面的可选实施例中,联盟链的构建装置还包括:
启用模块,用于获取用于启用新增服务的启用参数,根据启用参数和目标配置模板,基于目标联盟链启用新增服务。
在第二方面的可选实施例中,启用模块在根据启用参数和目标配置模板,基于目标联盟链启用新增服务时,具体用于:
根据启用参数和目标配置模板生成与新增服务对应的新增配置文件;
将新增配置文件输入容器编排引擎中运行,以基于目标联盟链启用新增服务。
第三方面,提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时实现本申请第一方面所示的联盟链的构建方法。
第四方面,提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请第一方面所示的联盟链的构建方法。
本申请提供的技术方案带来的有益效果是:
当接收到用户输入的配置参数时,将配置参数输入预设的配置模板可以直接生成相应的配置文件,然后根据配置参数设置用于存储配置文件的运行文件的存储路径,再将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链,根据预设的配置模板即可得到相应的配置文件,构建效率高,且当出现参数变动时,只需要将新的配置参数输入配置模板,即可得到新的配置文件,不需要重新书写配置文件,可以节省时间成本,提高构建效率。
进一步的,需要启用新增服务时,根据新增服务的启用参数和目标配置模板,即可获得与新增服务对应的配置文件,然后进一步在目标联盟链的基础上启用新增服务,不需要重新构建目标联盟链,可以有效提高新增服务的创建效率。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种联盟链的构建方法的流程示意图;
图2为本申请实施例提供的一种联盟链的构建方法的流程示意图;
图3为本申请实施例提供的一种联盟链的构建方法的流程示意图;
图4为本申请实施例提供的一种联盟链的构建装置的结构示意图;
图5为本申请实施例提供的一种联盟链的构建装置的结构示意图;
图6为本申请实施例提供的一种联盟链的构建装置的结构示意图;
图7为本申请实施例提供的一种联盟链的构建的电子设备的结构示意图。
具体实施方式
下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
本申请提供的联盟链的构建方法、装置、电子设备及计算机可读存储介质,旨在解决现有技术的如上技术问题。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本申请的实施例进行描述。
本申请实施例中提供了一种可能的实现方式,如图1所示,提供了一种联盟链的构建方法,可以包括以下步骤:
步骤S101,接收用户输入的配置参数,根据配置参数和预设的配置模板生成相应的配置文件;其中,配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称。
本步骤中,可以是用户输入配置参数,也可以是配置模板中预存有多个候选的配置参数,用户从候选的配置参数中选择配置参数。
在具体实施过程中,配置模板构建有不同的配置参数和不同的配置文件之间的对应关系,当用户输入或者选择配置参数时,配置模板可以生成对应的配置文件。
其中,开发框架可以是zk;zk是一种网页应用程序开发框架,用于丰富网页应用程序的使用界面;分布式发布订阅消息系统可以是Kafka;Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者在网站中的所有动作流数据。
步骤S102,根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径。
在具体实施过程中,可以在预设的初始存储路径下根据联盟名称设置存储子路径,然后在存储子路径下根据开发框架的数量和分布式发布订阅消息系统的数量,进一步设置存储路径,以用于存储与开发框架对应的运行文件以及与分布式发布订阅消息系统对应的运行文件。
步骤S103,将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链。
其中,容器编排引擎可以是Kubernetes;Kubernetes是Google开源的一个容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。
在具体实施过程中,可以调用Kubernetes的应用程序编程接口,在容器编排引擎中创建联盟名称的命名空间、开发框架的集群服务和分布式发布订阅消息系统的集群服务,以创建目标联盟链。
本实施例提供的联盟链的构建方法,当接收到用户输入的配置参数时,将配置参数输入预设的配置模板可以直接生成相应的配置文件,然后根据配置参数设置用于存储配置文件的运行文件的存储路径,再将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链,根据预设的配置模板即可得到相应的配置文件,构建效率高,且当出现参数变动时,只需要将新的配置参数输入配置模板,即可得到新的配置文件,不需要重新书写配置文件,可以节省时间成本,提高构建效率。
本申请实施例中提供了一种可能的实现方式,如图2所示,步骤S101的接收用户输入的配置参数之前,还可以包括:
步骤S100,获取样本配置参数和对应的样本配置文件,根据样本配置参数和样本配置文件之间的对应关系,构建配置模板。
在具体实施过程中,可以将用户可能输入的所有配置参数作为样本配置参数,并结合其他不需要用户设置的通用参数,构建与不同的样本配置参数对应的配置模板,并得到与不同的配置参数对应的配置文件。
本申请实施例中提供了一种可能的实现方式,步骤S101的根据配置参数和预设的配置模板生成相应的配置文件的步骤,可以包括:
(1)将配置参数输入预设的配置模板中得到目标配置模板,基于目标配置模板得到yaml格式的配置文件;
(2)将yaml格式的配置文件进行格式转换,得到json格式的配置文件。
其中,yaml格式是一种可读性高,用来表达数据序列化的格式;json(JavaScriptObject Notation,JS对象简谱)格式是一种轻量级的数据交换格式,易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
在具体实施过程中,将yaml格式的配置文件转化成json格式的配置文件,再将json格式的配置文件输入预设的容器编排引擎中运行,可以便于机器解析和生成,并有效地提升网络传输效率。
本申请实施例中提供了一种可能的实现方式,步骤S102的根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径的步骤,可以包括:
(1)在预设的初始存储路径下设置以联盟名称命名的存储子路径;
(2)在存储子路径下设置与开发框架的数量相同的开发框架的存储路径,以存储与开发框架对应的运行文件;
(3)在存储子路径下设置与分布式发布订阅消息系统的数量相同的分布式发布订阅消息系统的存储路径,以存储与分布式发布订阅消息系统对应的运行文件。
例如,初始存储路径的目录为/data/dev,接收到的开发框架zk的数量为3,接收到的分布式发布订阅消息系统Kafka的数量为3,目标联盟链的联盟名称为league,可以将现在初始存储路径的目录/data/dev下设置以联盟名称命名的存储子路径,得到/data/dev/league;然后在存储子路径/data/dev/league下设置与zk的数量相同的zk的存储路径,即在/data/dev/league下设置3个用于存储与zk对应的运行文件的存储路径,可以设置/data/dev/league/zk1、/data/dev/league/zk和/data/dev/league/zk2;同样的,在存储子路径下/data/dev/league设置与Kafka的数量相同的Kafka的存储路径,即在/data/dev/league下设置3个用于存储与Kafka对应的运行文件的存储路径,可以设置/data/dev/league/kafka1、/data/dev/league/kafka2和/data/dev/league/kafka3。
本申请实施例中提供了一种可能的实现方式,步骤S103的将配置文件输入预设的容器编排引擎中运行,可以包括:将json格式的配置文件输入预设的容器编排引擎中,调用容器编排引擎的应用程序编程接口,在容器编排引擎中创建联盟名称的命名空间、开发框架的集群服务和分布式发布订阅消息系统的集群服务。
其中,容器编排引擎可以是Kubernetes;命名空间(NameSpace)是用于组织和重用代码的,采用NameSpace,可以避免不同的人写的程序的库文件中出现同名的变量或函数而导致程序出问题;应用程序接口(API,Application Programming Interface)是一些预先定义的函数,可以指软件系统不同组成部分衔接的约定。
在具体实施过程中,可以调用Kubernetes的API,按照设定顺序,在Kubernetes中创建联盟名称的命名空间、zk的集群服务和Kafka的集群服务,例如先创建zk的集群服务,再创建Kafka的集群服务的顺序,当联盟名称的命名空间、zk的集群服务和Kafka的集群服务创建完成时,目标联盟链的基础服务创建完成。
本申请实施例中提供了一种可能的实现方式,如图3所示,联盟链的构建方法还可以包括:
步骤S104,获取用于启用新增服务的启用参数,根据启用参数和目标配置模板,基于目标联盟链启用新增服务。
在具体实施过程中,基于配置参数得到目标配置模板,再根据目标配置模板创建目标联盟链,若需要基于目标联盟链启动新增服务,则根据用于启用新增服务的启用参数和目标配置模板,获得对应的新的目标配置模板,再根据新的配置模板得到新的配置文件,然后根据新的配置文件在目标联盟链上启动新增服务。
具体的,步骤S104的根据启用参数和目标配置模板,基于目标联盟链启用新增服务,可以包括:
(1)根据启用参数和目标配置模板生成与新增服务对应的新增配置文件;
(2)将新增配置文件输入容器编排引擎中运行,以基于目标联盟链启用新增服务。
例如,若需要启用新的order节点和peer节点,将和新的order节点和peer节点对应的启动参数输入到目标配置模板中,生成与启用新的order节点和peer节点对应的新的yaml配置文件,将新的yaml配置文件转换为新的json配置文件,再调用Kubernetes的API,以基于目标联盟链启用新的order节点和peer节点。
上述的联盟链的构建方法,当接收到用户输入的配置参数时,将配置参数输入预设的配置模板可以直接生成相应的配置文件,然后根据配置参数设置用于存储配置文件的运行文件的存储路径,再将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链,根据预设的配置模板即可得到相应的配置文件,构建效率高,且当出现参数变动时,只需要将新的配置参数输入配置模板,即可得到新的配置文件,不需要重新书写配置文件,可以节省时间成本,提高构建效率。
进一步的,需要启用新增服务时,根据新增服务的启用参数和目标配置模板,即可获得与新增服务对应的配置文件,然后进一步在目标联盟链的基础上启用新增服务,不需要重新构建目标联盟链,可以有效提高新增服务的创建效率。
本申请实施例中提供了一种可能的实现方式,如图4所示,提供了一种联盟链的构建装置40,该联盟链的构建装置40可以包括:接收模块401、设置模块402和运行模块403,其中,
接收模块401,用于接收用户输入的配置参数,根据配置参数和预设的配置模板生成相应的配置文件;其中,配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;
设置模块402,用于根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量设置用于存储配置文件的运行文件的存储路径;
运行模块403,用于将配置文件输入预设的容器编排引擎中运行,使得到的运行文件基于存储路径进行存储,以构建目标联盟链。
上述的联盟链的构建装置,当接收到用户输入的配置参数时,将配置参数输入预设的配置模板可以直接生成相应的配置文件,然后根据配置参数设置用于存储配置文件的运行文件的存储路径,再将配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于存储路径进行存储,以构建目标联盟链,根据预设的配置模板即可得到相应的配置文件,构建效率高,且当出现参数变动时,只需要将新的配置参数输入配置模板,即可得到新的配置文件,不需要重新书写配置文件,可以节省时间成本,提高构建效率。
本申请实施例中提供了一种可能的实现方式,联盟链的构建装置40,还包括:
模板获取模块400,用于获取样本配置参数和对应的样本配置文件,根据样本配置参数和样本配置文件之间的对应关系,构建配置模板。
本申请实施例中提供了一种可能的实现方式,接收模块401在根据配置参数和预设的配置模板生成相应的配置文件时,具体用于:
将配置参数输入预设的配置模板中得到目标配置模板,基于目标配置模板得到yaml格式的配置文件;
将yaml格式的配置文件进行格式转换,得到json格式的配置文件。
本申请实施例中提供了一种可能的实现方式,设置模块402在根据联盟名称、开发框架的数量和分布式发布订阅消息系统的数量,设置用于存储配置文件的运行文件的存储路径时,具体用于:
在预设的初始存储路径下设置以联盟名称命名的存储子路径;
在存储子路径下设置与开发框架的数量相同的开发框架的存储路径,以存储与开发框架对应的运行文件;
在存储子路径下设置与分布式发布订阅消息系统的数量相同的分布式发布订阅消息系统的存储路径,以存储与分布式发布订阅消息系统对应的运行文件。
本申请实施例中提供了一种可能的实现方式,运行模块403在将配置文件输入预设的容器编排引擎中运行时,具体用于:
将json格式的配置文件输入预设的容器编排引擎中,调用容器编排引擎的应用程序编程接口,在容器编排引擎中创建联盟名称的命名空间、开发框架的集群服务和分布式发布订阅消息系统的集群服务。
本申请实施例中提供了一种可能的实现方式,联盟链的构建装置40还包括:
启用模块404,用于获取用于启用新增服务的启用参数,根据启用参数和目标配置模板,基于目标联盟链启用新增服务。
本申请实施例中提供了一种可能的实现方式,启用模块404在根据启用参数和目标配置模板,基于目标联盟链启用新增服务时,具体用于:
根据启用参数和目标配置模板生成与新增服务对应的新增配置文件;
将新增配置文件输入容器编排引擎中运行,以基于目标联盟链启用新增服务。
本公开实施例的图片的联盟链的构建装置可执行本公开的实施例所提供的一种图片的联盟链的构建方法,其实现原理相类似,本公开各实施例中的图片的联盟链的构建装置中的各模块所执行的动作是与本公开各实施例中的图片的联盟链的构建方法中的步骤相对应的,对于图片的联盟链的构建装置的各模块的详细功能描述具体可以参见前文中所示的对应的图片的联盟链的构建方法中的描述,此处不再赘述。
基于与本公开的实施例中所示的方法相同的原理,本公开的实施例中还提供了一种电子设备,该电子设备可以包括但不限于:处理器和存储器;存储器,用于存储计算机操作指令;处理器,用于通过调用计算机操作指令执行实施例所示的联盟链的构建方法。与现有技术相比,本申请中的联盟链的构建方法可以提高联盟链的构建效率。
在一个可选实施例中提供了一种电子设备,如图7所示,图7所示的电子设备4000包括:处理器4001和存储器4003。其中,处理器4001和存储器4003相连,如通过总线4002相连。可选地,电子设备4000还可以包括收发器4004。需要说明的是,实际应用中收发器4004不限于一个,该电子设备4000的结构并不构成对本申请实施例的限定。
处理器4001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器4001也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线4002可包括一通路,在上述组件之间传送信息。总线4002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线4002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器4003可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器4003用于存储执行本申请方案的应用程序代码,并由处理器4001来控制执行。处理器4001用于执行存储器4003中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图7示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请中的联盟链的构建方法可以提高联盟链的构建效率。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述实施例所示的方法。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (10)

1.一种联盟链的构建方法,其特征在于,包括:
接收用户输入的配置参数,根据所述配置参数和预设的配置模板生成相应的配置文件;其中,所述配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;
根据所述联盟名称、所述开发框架的数量和所述分布式发布订阅消息系统的数量,设置用于存储所述配置文件的运行文件的存储路径;
将所述配置文件输入预设的容器编排引擎中运行,并将得到的运行文件基于所述存储路径进行存储,以构建所述目标联盟链。
2.根据权利要求1所述的联盟链的构建方法,其特征在于,所述接收用户输入的配置参数的步骤之前,还包括:
获取样本配置参数和对应的样本配置文件,根据所述样本配置参数和所述样本配置文件之间的对应关系,构建所述配置模板。
3.根据权利要求1所述的联盟链的构建方法,其特征在于,所述根据所述配置参数和预设的配置模板生成相应的配置文件的步骤,包括:
将所述配置参数输入预设的所述配置模板中得到目标配置模板,基于所述目标配置模板得到yaml格式的所述配置文件;
将所述yaml格式的配置文件进行格式转换,得到json格式的配置文件。
4.根据权利要求1所述的联盟链的构建方法,其特征在于,所述根据所述联盟名称、所述开发框架的数量和所述分布式发布订阅消息系统的数量,设置用于存储所述配置文件的运行文件的存储路径的步骤,包括:
在预设的初始存储路径下设置以所述联盟名称命名的存储子路径;
在所述存储子路径下设置与所述开发框架的数量相同的开发框架的存储路径,以存储与所述开发框架对应的运行文件;
在所述存储子路径下设置与所述分布式发布订阅消息系统的数量相同的分布式发布订阅消息系统的存储路径,以存储与所述分布式发布订阅消息系统对应的运行文件。
5.根据权利要求3所述的联盟链的构建方法,其特征在于,所述将所述配置文件输入预设的容器编排引擎中运行的步骤,包括:
将所述json格式的配置文件输入预设的容器编排引擎中,调用所述容器编排引擎的应用程序编程接口,在所述容器编排引擎中创建所述联盟名称的命名空间、所述开发框架的集群服务和所述分布式发布订阅消息系统的集群服务。
6.根据权利要求3所述的联盟链的构建方法,其特征在于,还包括:
获取用于启用新增服务的启用参数,根据所述启用参数和所述目标配置模板,基于所述目标联盟链启用所述新增服务。
7.根据权利要求6所述的联盟链的构建方法,其特征在于,所述根据所述启用参数和所述目标配置模板,基于所述目标联盟链启用所述新增服务的步骤,包括:
根据所述启用参数和所述目标配置模板生成与所述新增服务对应的新增配置文件;
将所述新增配置文件输入所述容器编排引擎中运行,以基于所述目标联盟链启用所述新增服务。
8.一种联盟链的构建装置,其特征在于,包括:
接收模块,用于接收用户输入的配置参数,根据所述配置参数和预设的配置模板生成相应的配置文件;其中,所述配置参数包括开发框架的数量、分布式发布订阅消息系统的数量和目标联盟链的联盟名称;
设置模块,用于根据所述联盟名称、所述开发框架的数量和所述分布式发布订阅消息系统的数量设置用于存储所述配置文件的运行文件的存储路径;
运行模块,用于将所述配置文件输入预设的容器编排引擎中运行,使得到的运行文件基于所述存储路径进行存储,以构建所述目标联盟链。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1-7任一项所述的联盟链的构建方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现权利要求1-7任一项所述的联盟链的构建方法。
CN201910959938.9A 2019-10-10 2019-10-10 联盟链的构建方法、装置和电子设备 Active CN110704099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910959938.9A CN110704099B (zh) 2019-10-10 2019-10-10 联盟链的构建方法、装置和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910959938.9A CN110704099B (zh) 2019-10-10 2019-10-10 联盟链的构建方法、装置和电子设备

Publications (2)

Publication Number Publication Date
CN110704099A true CN110704099A (zh) 2020-01-17
CN110704099B CN110704099B (zh) 2021-04-02

Family

ID=69200146

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910959938.9A Active CN110704099B (zh) 2019-10-10 2019-10-10 联盟链的构建方法、装置和电子设备

Country Status (1)

Country Link
CN (1) CN110704099B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111914519A (zh) * 2020-07-27 2020-11-10 平安证券股份有限公司 目标对象生成方法及装置、电子设备、存储介质
CN112181720A (zh) * 2020-09-11 2021-01-05 济南浪潮数据技术有限公司 一种基于云管理平台的虚拟数据中心备份方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150067146A1 (en) * 2013-09-04 2015-03-05 AppDynamics, Inc. Custom correlation of a distributed business transaction
CN107294750A (zh) * 2016-04-01 2017-10-24 阿里巴巴集团控股有限公司 一种云集群能自识别的分布配置管理方法和装置
CN108037961A (zh) * 2017-12-07 2018-05-15 北京锐安科技有限公司 一种应用程序配置方法、装置、服务器和存储介质
CN110113185A (zh) * 2019-04-18 2019-08-09 卓尔购电子商务(武汉)有限公司 一种快速部署联盟链的方法、系统、存储介质和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150067146A1 (en) * 2013-09-04 2015-03-05 AppDynamics, Inc. Custom correlation of a distributed business transaction
CN107294750A (zh) * 2016-04-01 2017-10-24 阿里巴巴集团控股有限公司 一种云集群能自识别的分布配置管理方法和装置
CN108037961A (zh) * 2017-12-07 2018-05-15 北京锐安科技有限公司 一种应用程序配置方法、装置、服务器和存储介质
CN110113185A (zh) * 2019-04-18 2019-08-09 卓尔购电子商务(武汉)有限公司 一种快速部署联盟链的方法、系统、存储介质和装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111914519A (zh) * 2020-07-27 2020-11-10 平安证券股份有限公司 目标对象生成方法及装置、电子设备、存储介质
CN111914519B (zh) * 2020-07-27 2023-10-03 平安证券股份有限公司 目标对象生成方法及装置、电子设备、存储介质
CN112181720A (zh) * 2020-09-11 2021-01-05 济南浪潮数据技术有限公司 一种基于云管理平台的虚拟数据中心备份方法及装置

Also Published As

Publication number Publication date
CN110704099B (zh) 2021-04-02

Similar Documents

Publication Publication Date Title
CN110532020B (zh) 一种微服务编排的数据处理方法、装置及系统
CN108984388B (zh) 一种生成自动化测试用例的方法及终端设备
CN111897740B (zh) 用户界面的测试方法、装置、电子设备及计算机可读介质
US11275568B2 (en) Generating a synchronous digital circuit from a source code construct defining a function call
CN111679990B (zh) 测试数据生成方法、装置、可读介质及电子设备
US20140156849A1 (en) Map-reduce workflow processing apparatus and method, and storage media storing the same
US20180150530A1 (en) Method, Apparatus, Computing Device and Storage Medium for Analyzing and Processing Data
CN111443909B (zh) 用于生成页面的方法及装置
CN110955715A (zh) Erp系统和目标平台的数据转换方法、装置以及电子设备
CN110704099B (zh) 联盟链的构建方法、装置和电子设备
CN111309304B (zh) 一种生成idl文件的方法、装置、介质和电子设备
CN110765752B (zh) 试题的生成方法、装置、电子设备及计算机可读存储介质
CN111625422A (zh) 线程监控方法、装置、电子设备及计算机可读存储介质
CN111324470B (zh) 用于生成信息的方法及装置
CN112181378B (zh) 业务流程的实现方法及装置
CN111124523A (zh) 用于初始化应用的方法和装置
CN113704079A (zh) 基于Protobuf的接口测试方法和装置
CN113761548B (zh) 用于Shuffle过程的数据传输方法和装置
CN111399902B (zh) 客户端源文件处理方法、装置、可读介质与电子设备
CN110727654B (zh) 分布式系统的数据提取方法、装置、服务器和存储介质
CN116319322B (zh) 电力设备节点通信连接方法、装置、设备和计算机介质
CN113806033B (zh) 用于任务系统的任务执行方法、装置、服务器和介质
CN113472565B (zh) 服务器功能的扩容方法、装置、设备和计算机可读介质
CN116483808B (zh) 数据迁移方法、装置、电子设备和计算机可读介质
CN112883697B (zh) 工作流表单生成方法、装置、电子设备和计算机可读介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant