区块链混合云中的公有云产品包生成方法及服务器技术

技术编号:22640898 阅读:32 留言:0更新日期:2019-11-26 15:58
本发明专利技术提供的一种区块链混合云中的公有云产品包生成方法及服务器,将区块链网络部署在私有云上,而服务平台可以部署在多种公有云上,在打通私有云和公有云之间的网路基础上,面对不同的公有云服务提供商,输出对应平台的区块链服务平台产品,同时针对不同公有云服务提供商,通过自动检测,自动打包程序输出不同的产品,可减少开发过程中代码的修改率,减少产品对于部署平台的依赖。

Public cloud product package generation method and server in blockchain hybrid cloud

The invention provides a public cloud product package generation method and a server in a blockchain hybrid cloud, which deploys the blockchain network on a private cloud, while the service platform can be deployed on a variety of public clouds. On the basis of getting through the network between the private cloud and the public cloud, facing different public cloud service providers, output the blockchain service platform products of the corresponding platform, and at the same time Different public cloud service providers can automatically package programs to output different products through automatic detection, which can reduce the code modification rate in the development process and reduce the dependence of products on the deployment platform.

【技术实现步骤摘要】
区块链混合云中的公有云产品包生成方法及服务器
本专利技术涉及区块链
,更具体的,涉及一种区块链混合云中的公有云产品包生成方法及服务器。
技术介绍
私有云主要是面向企业用户,出于安全考虑,企业更愿意将数据存放在私有云中,但是同时又希望可以获得公有云的计算资源,在这种情况下混合云被越来越多的采用,它将公有云和私有云进行混合和匹配,以获得最佳的效果,这种个性化的解决方案,达到了灵活部署,省钱,安全的目的。
技术实现思路
有鉴于此,本申请提供一种区块链混合云中的公有云产品包生成方法,所述区块链网络部署在私有云上,所述公有云产品包生成方法包括:获取区块链业务逻辑代码、公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;根据区块链接口以及所述映射关系生成代理接口;根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包。在某些实施例中,所述获取区块链业务逻辑代码、公有云名称标签、公有云版本以及区块链接口与公有云接口的映射关系,包括:从产品输出管理服务器获取第一打包文件,所述第一打包文件包括所述区块链业务逻辑代码;从公有云信息库服务器获取第二打包文件,所述第二打包文件包括公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;对所述第一打包文件和所述第二打包文件进行拆包处理,得到所述区块链业务逻辑代码、公有云名称标签、公有云版本以及区块链接口与公有云接口的映射关系。在某些实施例中,所述公有云产品包生成方法还包括:对所述第一打包文件和所述第二打包文件进行合法性筛选,对判定为非法的信息进行拦截。在某些实施例中,所述公有云产品包生成方法还包括:通过正则表达式判断第一打包文件和第二打包文件中的所述区块链代码库、公有云名称标签、公有云版本号以及所述映射关系是否符合预设规则;所述对所述第一打包文件和所述第二打包文件进行拆包处理,包括:对符合预设规则的信息进行拆包处理。在某些实施例中,所述根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包,包括:根据选择的公有云平台信息,选择对应平台的容器版本的程序依赖库;将所述代理接口的代码与区块链底层代码整合为部署公有云平台的底层程序源码;根据公有云平台信息、底层程序源码和程序依赖库形成公有云产品包底层代码压缩包;根据所述底层程序源码和所述区块链业务逻辑代码,生成所述公有云产品包业务逻辑压缩包;根据所述公有云产品包底层代码压缩包和所述公有云产品包业务逻辑压缩包生成所述公有云产品包。在某些实施例中,所述根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包,还包括:根据区块链底层代码标注和公有云接口信息生成公有云代理接口层,进而屏蔽公有云容器、容器内核版本以及操作系统内核版本和依赖库的不同带来的差异。在某些实施例中,所述根据所述底层程序源码和所述区块链业务逻辑代码,生成所述公有云产品包业务逻辑压缩包,包括:使用jit编译器编译底层程序源码生成中间代码,并结合选择的公有云平台提供的web服务中间件,生成对应的公有云产品包业务逻辑压缩包。在某些实施例中,所述根据公有云平台信息、底层程序源码和程序依赖库形成公有云产品包底层代码压缩包,包括:通过gobuild命令编译公有云平台信息、程序源码和程序依赖库生成可执行文件;将所述可执行文件压缩为公有云产品包底层代码压缩包。本申请还提供一种区块链混合云中的代码打包服务器,包括:获取模块,获取区块链业务逻辑代码、公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;代理接口生成模块,根据区块链接口以及所述映射关系生成代理接口;编译模块,根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本的可执行的公有云产品包。在某些实施例中,所述获取模块包括:第一获取单元,从产品输出管理服务器获取第一打包文件,所述第一打包文件包括所述区块链业务逻辑代码;第二获取单元,从公有云信息库服务器获取第二打包文件,所述第二打包文件包括公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;拆包单元,对所述第一打包文件和所述第二打包文件进行拆包处理,得到所述区块链业务逻辑代码、公有云名称标签、公有云版本以及区块链接口与公有云接口的映射关系。在某些实施例中,所述代码打包服务器还包括:合法性筛选模块,对所述第一打包文件和所述第二打包文件进行合法性筛选,对判定为非法的信息进行拦截。在某些实施例中,所述代码打包服务器还包括:判断模块,通过正则表达式判断第一打包文件和第二打包文件中的所述区块链代码库、公有云名称标签、公有云版本号以及所述映射关系是否符合预设规则;所述拆包单元对符合预设规则的信息进行拆包处理。在某些实施例中,所述编译模块,包括:程序依赖库选择单元,根据选择的公有云平台信息,选择对应平台的容器版本的程序依赖库;底层程序源码整合单元,将所述代理接口的代码与区块链底层代码整合为部署公有云平台的底层程序源码;公有云产品包底层代码压缩包形成单元,根据公有云平台信息、底层程序源码和程序依赖库形成公有云产品包底层代码压缩包;公有云产品包业务逻辑压缩包生成单元,根据所述底层程序源码和所述区块链业务逻辑代码,生成所述公有云产品包业务逻辑压缩包;公有云产品包生成单元,将所述公有云产品包底层代码压缩包和所述公有云产品包业务逻辑压缩包打包压缩生成所述公有云产品包。在某些实施例中,所述编译模块,还包括:公有云代理接口层生成单元,根据区块链底层代码标注和公有云接口信息生成公有云代理接口层,进而屏蔽公有云容器、容器内核版本以及操作系统内核版本和依赖库的不同带来的差异。在某些实施例中,所述公有云产品包业务逻辑压缩包生成单元使用jit编译器编译底层程序源码生成中间代码,并结合选择的公有云平台提供的web服务中间件,生成对应的公有云产品包业务逻辑压缩包。在某些实施例中,所述公有云产品包底层代码压缩包形成单元,包括:可执行文件生成单元,通过gobuild命令编译公有云平台信息、程序源码和依赖库生成可执行文件;可执行文件压缩单元,将所述可执行文件压缩为公有云产品包底层代码压缩包。本申请还提供一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上所述的方法的步骤。本申请还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述的方法的步骤。本专利技术具有如下有益效果:本专利技术提供的一种区块链混合云中的公有云产品包生成方法及服务器本文档来自技高网...

【技术保护点】
1.一种区块链混合云中的公有云产品包生成方法,其特征在于,所述区块链网络部署在私有云上,所述公有云产品包生成方法包括:/n获取区块链业务逻辑代码、公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;/n根据区块链接口以及所述映射关系生成代理接口;/n根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包。/n

【技术特征摘要】
1.一种区块链混合云中的公有云产品包生成方法,其特征在于,所述区块链网络部署在私有云上,所述公有云产品包生成方法包括:
获取区块链业务逻辑代码、公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;
根据区块链接口以及所述映射关系生成代理接口;
根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包。


2.根据权利要求1所述的公有云产品包生成方法,其特征在于,所述获取区块链业务逻辑代码、公有云名称标签、公有云版本以及区块链接口与公有云接口的映射关系,包括:
从产品输出管理服务器获取第一打包文件,所述第一打包文件包括所述区块链业务逻辑代码;
从公有云信息库服务器获取第二打包文件,所述第二打包文件包括公有云名称标签、公有云版本号以及区块链接口与公有云接口的映射关系;
对所述第一打包文件和所述第二打包文件进行拆包处理,得到所述区块链业务逻辑代码、公有云名称标签、公有云版本以及区块链接口与公有云接口的映射关系。


3.根据权利要求2所述的公有云产品包生成方法,其特征在于,所述公有云产品包生成方法还包括:
对所述第一打包文件和所述第二打包文件进行合法性筛选,对判定为非法的信息进行拦截。


4.根据权利要求2所述的公有云产品包生成方法,其特征在于,所述公有云产品包生成方法还包括:
通过正则表达式判断第一打包文件和第二打包文件中的所述区块链代码库、公有云名称标签、公有云版本号以及所述映射关系是否符合预设规则;
所述对所述第一打包文件和所述第二打包文件进行拆包处理,包括:
对符合预设规则的信息进行拆包处理。


5.根据权利要求2所述的公有云产品包生成方法,其特征在于,所述根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包,包括:
根据选择的公有云平台信息,选择对应平台的容器版本的程序依赖库;
将所述代理接口的代码与区块链底层代码整合为部署公有云平台的底层程序源码;
根据公有云平台信息、底层程序源码和程序依赖库形成公有云产品包底层代码压缩包;
根据所述底层程序源码和所述区块链业务逻辑代码,生成所述公有云产品包业务逻辑压缩包;
根据所述公有云产品包底层代码压缩包和所述公有云产品包业务逻辑压缩包生成所述公有云产品包。


6.根据权利要求5所述的公有云产品包生成方法,其特征在于,所述根据所述代理接口与所述区块链业务逻辑代码,生成对应所述公有云的名称标签和版本并且可执行的公有云产品包,还包括:
根据区块链底层代码标注和公有云接口信息生成公有云代理接口层。


7.根据权利要求5所述的公有云产品包生成方法,其特征在于,所述根据所述底层程序源码和所述区块链业务逻辑代码,生成所述公有云产品包业务逻辑压缩包,包括:
使用jit编译器编译底层程序源码生成中间代码,并结合选择的公有云平台提供的web服务中间件,生成对应的公有云产品包业务逻辑压缩包。


8.根据权利要求7所述的公有云产品包生成方法,其特征在于,所述根据公有云平台信息、底层程序源码和程序依赖库形成公有云产品包底层代码压缩包,包括:
通过gobuild命令编译公有云平台信息、程序源码和程序依赖库生成可执行文件;
将所述可执行文件压缩为公有云产品包底层代码压缩包。


9.一种区块链混合云中的代码打包服务器,其特征在于,...

【专利技术属性】
技术研发人员:吴业骏罗伟彬李狄威万涛赵开山
申请(专利权)人:中国工商银行股份有限公司
类型:发明
国别省市:北京;11

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

1