CN109165122B - 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法 - Google Patents

一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法 Download PDF

Info

Publication number
CN109165122B
CN109165122B CN201810917876.0A CN201810917876A CN109165122B CN 109165122 B CN109165122 B CN 109165122B CN 201810917876 A CN201810917876 A CN 201810917876A CN 109165122 B CN109165122 B CN 109165122B
Authority
CN
China
Prior art keywords
park
nodes
fault
node
production
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.)
Active
Application number
CN201810917876.0A
Other languages
English (en)
Other versions
CN109165122A (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.)
Yiqiyin Hangzhou Technology Co ltd
China Zheshang Bank Co Ltd
Original Assignee
China Zheshang Bank 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 China Zheshang Bank Co Ltd filed Critical China Zheshang Bank Co Ltd
Priority to CN201810917876.0A priority Critical patent/CN109165122B/zh
Publication of CN109165122A publication Critical patent/CN109165122A/zh
Application granted granted Critical
Publication of CN109165122B publication Critical patent/CN109165122B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2023Failover techniques
    • G06F11/2028Failover techniques eliminating a faulty processor or activating a spare
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2041Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant with more than one idle spare processing component

Abstract

本发明公开了一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,本发明根据区块链平台的节点共识机制,确定生产节点数的范围;当容错节点数已知时,根据节点共识机制的容错算法确定生产节点数;当生产节点数已知时,根据节点共识机制的容错算法确定容错节点数;根据园区的数量、生产节点数、容错节点数、备份节点数制定多园区多活、单园区灾备方案,并制定相应的异常处理流程。本发明根据区块链平台节点共识机制以及区块链节点部署情况,以配置化方式实现多地多中心的灾备方案,特别是金融机构两地三中心架构下实现本地/同城园区互备或同城双活、异地园区灾备,降低生产风险。

Description

一种提升基于区块链技术实现的应用系统同城多园区部署灾 备能力的方法
技术领域
本发明属于计算机系统领域,尤其涉及一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法。
背景技术
如何保证应用系统的高可用性,一直是金融机构信息系统建设的重点工作,目前商业银行传统的应用系统已有相对成熟的灾备方案,但考虑到区块链平台在商用化环境下多以联盟链的形式部署,外围应用都使用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=2n;
第一园区到第m-1园区:每个园区至少部署1个生产节点,至多部署CEIL[n/(m-1)]个生产节点,每个园区部署的备份节点数与当前园区部署的生产节点数保持一致,所有园区部署的生产节点总数等于n;
第m园区:部署n个备份节点;
当故障节点数小于等于f时,不影响生产运行。
进一步地,所述多园区多活、单园区灾备的异常处理流程如下:
单节点故障:将故障节点切换到同园区备份节点;
多节点故障:将故障节点切换到同园区备份节点;
园区级故障:将故障节点切换到第一园区到第m-1园区中非故障园区的备份节点,优先切换至同城园区;当故障节点数大于第一园区到第m-1园区中非故障园区的备份节点总数时,将故障节点切换到异地第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=2n;
第一园区到第m-1园区:每个园区至少部署1个生产节点,至多部署CEIL[n/(m-1)]个生产节点,其中CEIL为向上取整函数,每个园区部署的备份节点数与当前园区部署的生产节点数保持一致,所有园区部署的生产节点总数等于n;
第m园区:部署n个备份节点;
当故障节点数小于等于f时,不影响生产运行;
(b)异常处理流程:
单节点故障:将故障节点切换到同园区备份节点;
多节点故障:将故障节点切换到同园区备份节点;
园区级故障:将故障节点切换到第一园区到第m-1园区中非故障园区的备份节点,优先切换至同城园区;当故障节点数大于第一园区到第m-1园区中非故障园区的备份节点总数时,将故障节点切换到异地第m园区备份节点或将所有生产节点,包括故障节点和正常节点,切换到异地第m园区备份节点;
城市级故障:将故障节点切换到异地第m园区备份节点;
在异常处理流程中,通过人工或自动监控机制调整维护在数据库表或配置文件中的生产节点IP/主机名,将故障节点IP/主机名修改为相应的备份节点IP/主机名,实现节点快速切换。
实施例:以三个园区部署四个生产节点为例,对多园区多活、单园区灾备方案及异常处理流程进行了全面分析和对比。如图1所示,A表示生产节点,B表示备份节点。
(a)部署方式:4个生产节点、8个备份节点;
第一园区作为主园区:部署2个生产节点、2个备份节点;
第二园区作为同城园区:部署2个生产节点、2个备份节点;
第三园区作为异地灾备园区:部署4个备份节点;
(b)异常处理流程:
单节点故障:将故障节点切换到同园区备份节点;
多节点故障:将故障节点切换到同园区备份节点;
园区级故障:将故障节点切换到主园区或同城园区的备份节点;
城市级故障:将故障节点切换到异地灾备园区的备份节点;
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。

Claims (5)

1.一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,其特征在于,该方法包括以下步骤:
(1)根据区块链平台的联盟链或私有链的节点共识机制,确定生产节点数n的范围,n最小值为3;当容错节点数f已知时,根据节点共识机制的容错算法确定生产节点数n大于等于3f+1,小于等于3f+3;当生产节点数n已知时,根据节点共识机制的容错算法确定容错节点数f=TRUNC[(n-1)/3];其中TRUNC为截取整数/向下取整函数;
(2)根据园区的数量m、生产节点数n、容错节点数f、备份节点数b,制定多园区多活、单园区灾备方案,具体如下:
部署方式:n个生产节点、b个备份节点,b=2n;
第一园区到第m-1园区:每个园区至少部署1个生产节点,至多部署CEIL[n/(m-1)]个生产节点,其中CEIL为向上取整函数,每个园区部署的备份节点数与当前园区部署的生产节点数保持一致,所有园区部署的生产节点总数等于n;
第m园区:部署n个备份节点;
当故障节点数小于等于f时,不影响生产运行。
2.根据权利要求1所述的一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,其特征在于,所述多园区多活、单园区灾备的异常处理流程如下:
单节点故障:将故障节点切换到同园区备份节点;
多节点故障:将故障节点切换到同园区备份节点;
园区级故障:将故障节点切换到第一园区到第m-1园区中非故障园区的备份节点,优先切换至同城园区;当故障节点数大于第一园区到第m-1园区中非故障园区的备份节点总数时,将故障节点切换到异地第m园区备份节点或将所有生产节点,包括故障节点和正常节点,切换到异地第m园区备份节点;
城市级故障:将故障节点切换到异地第m园区备份节点。
3.根据权利要求2所述的一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,其特征在于,在异常处理流程中,通过人工或自动监控机制调整维护在数据库表或配置文件中的生产节点IP/主机名,将故障节点IP/主机名修改为相应的备份节点IP/主机名,实现节点快速切换。
4.根据权利要求1所述的一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,其特征在于,共识算法包括工作量证明机制或算法、权益证明机制或算法、BFT算法或基于BFT实现的算法。
5.根据权利要求1所述的一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法,其特征在于,所述备份节点可通过数据实时或准实时的方式从一个或多个生产节点同步,亦可通过共识算法进行数据同步,但是否参与共识由参数设置确定。
CN201810917876.0A 2018-08-13 2018-08-13 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法 Active CN109165122B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810917876.0A CN109165122B (zh) 2018-08-13 2018-08-13 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810917876.0A CN109165122B (zh) 2018-08-13 2018-08-13 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法

Publications (2)

Publication Number Publication Date
CN109165122A CN109165122A (zh) 2019-01-08
CN109165122B true CN109165122B (zh) 2021-10-29

Family

ID=64895711

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810917876.0A Active CN109165122B (zh) 2018-08-13 2018-08-13 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法

Country Status (1)

Country Link
CN (1) CN109165122B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111581278B (zh) * 2020-04-08 2023-12-22 浙商银行股份有限公司 一种基于区块链技术的仓单流转系统及方法
CN112162902A (zh) * 2020-09-24 2021-01-01 国网辽宁省电力有限公司辽阳供电公司 一种提升调控系统应用模块运行水平的多活冗余方法
CN112615915B (zh) * 2020-12-10 2022-05-24 浙商银行股份有限公司 一种在私有链之间构建联盟链的方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10872074B2 (en) * 2016-09-30 2020-12-22 Microsoft Technology Licensing, Llc Distributed availability groups of databases for data centers
CN106534317B (zh) * 2016-11-17 2019-09-03 杭州云象网络技术有限公司 一种基于区块链技术的灾备云存储系统构建方法
CN106529951A (zh) * 2016-12-30 2017-03-22 杭州云象网络技术有限公司 一种联盟链网络下采用异步方式的节点共识验证方法
CN108052620B (zh) * 2017-12-15 2021-02-12 泰康保险集团股份有限公司 数据状态的存储系统、区块链的节点数据处理系统和方法

Also Published As

Publication number Publication date
CN109165122A (zh) 2019-01-08

Similar Documents

Publication Publication Date Title
EP2281240B1 (en) Maintaining data integrity in data servers across data centers
CN109828868B (zh) 数据存储方法、装置、管理设备和双活数据存储系统
CN106062717B (zh) 一种分布式存储复制系统和方法
CN109165122B (zh) 一种提升基于区块链技术实现的应用系统同城多园区部署灾备能力的方法
CN110224871A (zh) 一种Redis集群的高可用方法及装置
WO2014101424A1 (zh) 分布式数据库同步方法和系统
CN103795754B (zh) 多系统间的数据同步方法和系统
CN108234306A (zh) 网络装置、网络方法和计算机可读存储介质
CN102938705B (zh) 一种高可用多机备份路由表管理与切换方法
EP3745269B1 (en) Hierarchical fault tolerance in system storage
WO2012145963A1 (zh) 数据管理系统及方法
KR102508817B1 (ko) 메시지 전송 버스를 이용한 고가용성 배전 지능화 시스템
CN108810150B (zh) 协同办公系统应用级灾备系统的数据复制方法
CN114301972B (zh) 一种基于云边协同的区块链节点分级部署方法和系统
Suh et al. On performance of OpenDaylight clustering
CN110348826A (zh) 异地多活容灾方法、系统、设备及可读存储介质
Amiri et al. Saguaro: An edge computing-enabled hierarchical permissioned blockchain
CN109144781B (zh) 一种提升基于区块链技术实现的应用系统单园区部署灾备能力的方法
CN109039750B (zh) 一种提升区块链应用系统多城多园区部署灾备能力的方法
Ruchel et al. A leaderless hierarchical atomic broadcast algorithm
CN104503871A (zh) 一种基于小型机系统全冗余模型的实现方法
CN114584450A (zh) 双层区块链系统及共识方法
Feng et al. A Low Communication Complexity Double‐layer PBFT Consensus
Lyu et al. High-availability deployment for large enterprises
CN115967611A (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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220614

Address after: No. 1788, Hongning Road, Xiaoshan District, Hangzhou, Zhejiang 311200

Patentee after: CHINA ZHESHANG BANK Co.,Ltd.

Patentee after: Yiqiyin (Hangzhou) Technology Co.,Ltd.

Address before: No.288, Qingchun Road, Hangzhou, Zhejiang, 310006

Patentee before: CHINA ZHESHANG BANK Co.,Ltd.