一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法与流程

文档序号:16530961发布日期:2019-01-05 10:45阅读:560来源:国知局
一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法与流程

本发明属于计算机系统领域,尤其涉及一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法。



背景技术:

如何保证应用系统的高可用性,一直是金融机构信息系统建设的重点工作,目前商业银行传统的应用系统已有相对成熟的灾备方案,但考虑到区块链平台在商用化环境下多以联盟链的形式部署,外围应用都使用esdk方式调用,具有多节点部署、拜占庭容错等特殊性,无法套用传统应用系统灾备方案,需要对其单独规划。同时,区块链平台作为底层平台,对接多个业务系统,上层支持多个产品应用,系统间依赖程度较高,交易频率呈持续上涨趋势,为降低生产风险,需要尽快根据区块链技术特点制定针对性的灾备方案。



技术实现要素:

本发明的目的在于基于金融机构普遍采取的“两地三中心”灾备体系架构,根据区块链技术特点制定针对性的灾备方案,提升区块链系统的高可用性。

本发明的目的是通过以下技术方案来实现的:一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法,该方法包括以下步骤:

(1)根据区块链平台的联盟链或私有链的节点共识机制,确定生产节点数n的范围,n最小值为3;当容错节点数f已知时,根据节点共识机制的容错算法确定生产节点数n大于等于3f+1,小于等于3f+3;当生产节点数n已知时,根据节点共识机制的容错算法确定容错节点数f=trunc[(n-1)/3];

(2)根据园区的数量m、生产节点数n、容错节点数f、备份节点数b,制定单园区单活、多园区灾备方案,具体如下:

部署方式:n个生产节点、b个备份节点,b=n(m-1);

第一园区作为主园区:部署n个生产节点;

第二园区到第m园区作为同城园区或异地灾备园区:每个园区部署n个备份节点;

当故障节点数小于等于f时,不影响生产运行。

进一步地,所述单园区单活、多园区灾备方案的异常处理流程如下:

单节点故障:将故障节点切换到第二园区到第m园区中的备份节点,优先切换至同城园区;

多节点故障:当故障节点数小于等于f时,将故障节点切换到第二园区到第m园区中的备份节点,优先切换至同城园区;当故障节点数大于f时,处理流程同园区级故障;

园区级故障:对于第一园区故障,将主园区整体切换到第二园区到第m园区中的某个园区,优先切换至同城园区;对于第二园区到第m园区故障,不影响生产运行;

城市级故障:将主园区整体切换到第二园区到第m园区中的某个异地园区。

进一步地,在异常处理流程中,通过人工或自动监控机制调整维护在数据库表或配置文件中的生产节点ip/主机名,将故障节点ip/主机名修改为相应的备份节点ip/主机名,实现节点快速切换。

进一步地,共识算法包括工作量证明机制或算法、权益证明机制或算法、bft算法或基于bft实现的算法。

进一步地,所述备份节点可通过数据实时或准实时的方式从一个或多个生产节点同步,亦可通过共识算法进行数据同步,但是否参与共识由参数设置确定。

本发明的有益效果是:基于商业银行现有的灾备体系架构,对区块链平台采取有别于传统应用系统的高可用灾备方法,从而保证传统系统与区块链系统依赖程度日益紧密,交易额持续上涨的同时,降低生产风险,保证区块链应用系统的稳定运行。

附图说明

图1是三个园区部署四个生产节点的实施例的节点部署结构图。

具体实施方式

下面结合附图和具体实施例对本发明作进一步详细说明,应当理解,此处描述的具体实施方式仅仅用以解释本发明,并不用于限定本发明。

因区块链平台具有多节点部署、拜占庭容错等特性,无法套用传统应用系统灾备方案,需要单独规划。本发明提供一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法,根据区块链平台的联盟链或私有链的节点共识机制,以及区块链节点部署情况,以配置化方式实现本地/同城园区互备、异地园区灾备,降低生产风险。

在商业银行领域,共识机制的概念为:通过选定节点的投票,在很短的时间内完成对交易的验证和确认;对一笔交易,如果利益不相干的若干个节点能够达成共识,我们就可以认为全网对此也能够达成共识;共识算法包括工作量证明机制或算法、权益证明机制或算法、bft算法或基于bft实现的算法等。备份节点可通过数据实时或准实时的方式从一个或多个生产节点同步,亦可通过共识算法进行数据同步,但是否参与共识由参数设置确定。

本发明提供的一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法,具体包括以下步骤:

(1)根据区块链平台的联盟链或私有链的节点共识机制,确定生产节点数n的范围,n最小值为3;当容错节点数f已知时,根据节点共识机制的容错算法确定生产节点数n大于等于3f+1,小于等于3f+3;当生产节点数n已知时,根据节点共识机制的容错算法确定容错节点数f=trunc[(n-1)/3],其中trunc为截取整数/向下取整函数;

(2)根据园区(或数据中心,数据中心可以为机房或相对独立的运行环境)的数量m、生产节点数n、容错节点数f、备份节点数b,制定单园区单活、多园区灾备方案,具体如下:

(a)部署方式:n个生产节点、b个备份节点,b=n(m-1);

第一园区作为主园区:部署n个生产节点;

第二园区到第m园区作为同城园区或异地灾备园区:每个园区部署n个备份节点;

当故障节点数小于等于f时,不影响生产运行;

(b)异常处理流程:

单节点故障:将故障节点切换到第二园区到第m园区中的备份节点,优先切换至同城园区;

多节点故障:当故障节点数小于等于f时,将故障节点切换到第二园区到第m园区中的备份节点,优先切换至同城园区;当故障节点数大于f时,处理流程同园区级故障;

园区级故障:对于第一园区故障,将主园区整体切换到第二园区到第m园区中的某个园区,优先切换至同城园区;对于第二园区到第m园区故障,不影响生产运行;

城市级故障:将主园区整体切换到第二园区到第m园区中的某个异地园区。

在异常处理流程中,通过人工或自动监控机制调整维护在数据库表或配置文件中的生产节点ip/主机名,将故障节点ip/主机名修改为相应的备份节点ip/主机名,实现节点快速切换。

实施例:以三个园区部署四个生产节点为例,对单园区单活、多园区灾备方案及异常处理流程进行了全面分析和对比。如图1所示,a表示生产节点,b表示备份节点。

(a)部署方式:4个生产节点、8个备份节点;

第一园区作为主园区:部署4个生产节点;

第二园区作为同城园区:部署4个备份节点;

第三园区作为异地灾备园区:部署4个备份节点;

(b)异常处理流程:

单节点故障:将故障节点切换到同城园区或异地灾备园区中的备份节点,优先切换至同城园区;

多节点故障:当故障节点数小于等于f时,将故障节点切换到同城园区或异地灾备园区中的备份节点,优先切换至同城园区;当故障节点数大于f时,处理流程同园区级故障;

园区级故障:对于主园区故障,将主园区整体切换到同城园区或异地灾备园区中的某个园区,优先切换至同城园区;对于同城园区或异地灾备园区故障,不影响生产运行;

城市级故障:将主园区整体切换到异地灾备园区;

上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。

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