CN114422331B - 容灾切换方法、装置及系统 - Google Patents
容灾切换方法、装置及系统 Download PDFInfo
- Publication number
- CN114422331B CN114422331B CN202210070967.1A CN202210070967A CN114422331B CN 114422331 B CN114422331 B CN 114422331B CN 202210070967 A CN202210070967 A CN 202210070967A CN 114422331 B CN114422331 B CN 114422331B
- Authority
- CN
- China
- Prior art keywords
- disaster recovery
- unit
- transaction request
- target transaction
- rule
- 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
Links
- 238000011084 recovery Methods 0.000 title claims abstract description 272
- 238000000034 method Methods 0.000 title claims abstract description 79
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 34
- 230000008569 process Effects 0.000 claims abstract description 24
- 239000012634 fragment Substances 0.000 claims description 45
- 238000004891 communication Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 238000012544 monitoring process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000013467 fragmentation Methods 0.000 description 8
- 238000006062 fragmentation reaction Methods 0.000 description 8
- 238000012545 processing Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000007246 mechanism Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 238000010367 cloning Methods 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 239000002699 waste material Substances 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000011521 glass Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0659—Management of faults, events, alarms or notifications using network fault recovery by isolating or reconfiguring faulty entities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q40/00—Finance; Insurance; Tax strategies; Processing of corporate or income taxes
- G06Q40/04—Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange
Abstract
本申请提供了一种容灾切换方法、装置及系统,可用于金融领域或其他领域,所述容灾切换方法包括:接收目标交易请求;根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。本申请能够实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而能够提高交易过程的可靠性。
Description
技术领域
本申请涉及容灾技术领域,尤其涉及一种容灾切换方法、装置及系统。
背景技术
单元部署架构,是为了解决传统架构在故障时,能够将故障影响减小到最低程度而设计的一种部署策略。该部署策略的优点是根据一定的业务规则将流量分散开来,按照资源域独立部署,当其中一个单元发生故障时,不会影响其他单元的交易;但是,这种部署策略在单元发生故障时,会影响本单元交易的正常执行。
为了消除单个单元故障对交易的影响,目前已有的处理方式是单元内冗余部署;冗余部署的缺点显而易见,资源浪费问题比较明显,正常交易时有一半的机器时空闲的,利用率极低,对于大型互联网场景,冗余部署带来的资源开销和浪费是一件高成本低效益的投入。同时,因为冗余部署仍属于的单元内部署,按照资源域的划分,同一个单元一般位于同一个物理部署位置,一旦某一区域整体断电、地震或者战争等灾难发生时,冗余部署并没有起到同单元灾备的作用。
发明内容
针对现有技术中冗余部署难以实现同单元灾备的问题,本申请提出了一种容灾切换方法、装置及系统,能够实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而能够提高交易过程的可靠性。
为了解决上述技术问题,本申请提供以下技术方案:
第一方面,本申请提供一种容灾切换方法,包括:
接收目标交易请求;
根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
进一步地,在所述接收目标交易请求之前,还包括:
将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
进一步地,所述的容灾切换方法,还包括:
若确定所述单元部署架构对应的配置中心处于故障状态,则应用所述客户端接收目标交易请求,以使所述客户端根据预设的取模算法和第二容灾切换规则,确定所述目标交易请求对应的运行单元和灾备单元;若所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,该灾备单元执行所述目标交易请求对应的交易。
进一步地,所述预设的第一容灾切换规则包括:多条规则记录,每条规则记录包括:交易对应的分片值、运行单元和灾备单元之间的对应关系。
进一步地,所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元,包括:
根据预设的取模算法,确定所述目标交易请求对应的分片值;
从预设的第一容灾切换规则中获得分片值为所述目标交易请求对应的分片值的规则记录,将该规则记录对应的运行单元确定为所述目标交易请求对应的运行单元,将该规则记录对应的灾备单元确定为所述目标交易请求对应的灾备单元。
进一步地,在所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元之后,还包括:
若确定所述目标交易请求对应的运行单元处于正常状态,则将所述目标交易请求发送至所述运行单元,执行所述目标交易请求对应的交易。
进一步地,在所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元之前,还包括:
根据均衡负载算法,确定预设的取模算法对应的各个分片值各自对应的运行单元和灾备单元;
根据各个分片值各自对应的运行单元和灾备单元,得到所述第一容灾切换规则。
第二方面,本申请提供一种容灾切换装置,包括:
接收模块,用于接收目标交易请求;
确定模块,用于根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
容灾切换模块,用于若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
进一步地,所述的容灾切换装置还包括:
更新模块,用于将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
第三方面,本申请提供一种容灾切换系统,包括:所述的容灾切换装置和单元部署架构;其中,
所述单元部署架构包括:客户端和多个单元;
各个单元分别与所述客户端和容灾切换装置通信连接。
第四方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的容灾切换方法。
第五方面,本申请提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现所述的容灾切换方法。
由上述技术方案可知,本申请提供一种容灾切换方法、装置及系统。其中,该方法包括:接收目标交易请求;根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易,能够实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而能够提高交易过程的可靠性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中容灾切换方法的流程示意图;
图2是本申请另一实施例中容灾切换方法的流程示意图;
图3是本申请又一实施例中容灾切换方法的流程示意图;
图4是本申请实施例中容灾切换方法的步骤021和步骤022的流程示意图;
图5是本申请实施例中容灾切换装置的结构示意图;
图6为本申请实施例的电子设备的系统构成示意框图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
单元:是指一个能完成所有业务操作的自包含集合,在这个集合中包含了所有业务所需的所有服务,以及分配给这个单元的数据。
单元部署架构:就是把单元作为系统部署的基本单位,在全站所有机房中部署数个单元,任意一个单元都部署了系统所需的所有应用,数据则是全量数据按照某种维度(通常是客户维度)水平划分后的一部分。单元化就是将服务和数据设计改造让其符合单元特征的过程。
为了实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而提高交易过程的可靠性,本申请实施例提供一种容灾切换装置,该装置可以是一服务器或客户端设备,所述客户端设备可以包括智能手机、平板电子设备、网络机顶盒、便携式计算机、台式电脑、个人数字助理(PDA)、车载设备和智能穿戴设备等。其中,所述智能穿戴设备可以包括智能眼镜、智能手表和智能手环等。
在实际应用中,进行容灾切换的部分可以在如上述内容所述的服务器侧执行,也可以所有的操作都在所述客户端设备中完成。具体可以根据所述客户端设备的处理能力,以及用户使用场景的限制等进行选择。本申请对此不作限定。若所有的操作都在所述客户端设备中完成,所述客户端设备还可以包括处理器。
上述的客户端设备可以具有通信模块(即通信单元),可以与远程的服务器进行通信连接,实现与所述服务器的数据传输。所述服务器可以包括任务调度中心一侧的服务器,其他的实施场景中也可以包括中间平台的服务器,例如与任务调度中心服务器有通信链接的第三方服务器平台的服务器。所述的服务器可以包括单台计算机设备,也可以包括多个服务器组成的服务器集群,或者分布式装置的服务器结构。
所述服务器与所述客户端设备之间可以使用任何合适的网络协议进行通信,包括在本申请提交日尚未开发出的网络协议。所述网络协议例如可以包括TCP/IP协议、UDP/IP协议、HTTP协议、HTTPS协议等。当然,所述网络协议例如还可以包括在上述协议之上使用的RPC协议(Remote Procedure Call Protocol,远程过程调用协议)、REST协议(Representational State Transfer,表述性状态转移协议)等。
需要说明的是,本申请公开的容灾切换方法、装置及系统可用于金融技术领域,也可用于除金融技术领域之外的任意领域,本申请公开的容灾切换方法、装置及系统的应用领域不做限定。
具体通过下述各个实施例进行说明。
为了实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而提高交易过程的可靠性,本实施例提供一种执行主体是容灾切换装置的容灾切换方法,该容灾切换装置包括但不限于服务器,如图1所示,该方法具体包含有如下内容:
步骤100:接收目标交易请求。
具体地,所述目标交易请求可以包含有目标交易的交易信息,如,卡号、手机号、交易类型和交易金额等。
步骤200:根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
具体地,所述预设的取模算法可以是hash按照128取模算法;所述预设的第一容灾切换规则可以包括:多条规则记录,每条规则记录包括:交易对应的分片值、运行单元和灾备单元之间的对应关系;单元部署架构可以部署多个单元,分别设置在不同的物理部署位置,单元可以指服务器集群,多个单元可以表示多个服务器集群;目标交易请求对应的运行单元可以为正常情况下用于执行目标交易请求的单元,目标交易请求对应的灾备单元可以为目标交易请求对应的运行单元处于故障状态时,用于执行目标交易请求的单元;如,原本为分片值为1至32对应的交易请求路由至单元1,现在计划将分片值为1至32对应的交易请求路由至单元2,其中,分片值为1至32为规则记录中的分片值,单元1为规则记录中的运行单元,单元2为规则记录对应的灾备单元;如果配置中心刚好故障,则会按照客户端本地的容灾切换规则中发版时配置的默认值执行,能够避免匹配不到容灾切换规则导致无法路由的问题。
步骤300:若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
具体地,单元处于故障状态可以表示单元所在的区域整体处于断电、或者地震、战争等灾难时,导致的单元整体处于故障状态。所述容灾切换装置可以是配置中心,在一种举例中,分片值为1-32的交易请求路由到单元1,分片值为33-64的交易请求路由到单元2,可以按照应用或者具体的分片值(这里可以理解为就是1-64中的某一个数字)灵活的切换到其他单元。
为了提高客户端本地的容灾切换规则的可靠性,在本申请一个实施例中,在步骤100之前,还包括:
步骤001:将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
具体地,所述预设的第一容灾切换规则可以表示容灾切换装置发送的容灾切换规则;第二容灾切换规则可以表示客户端本地存储的容灾切换规则;所述客户端可以是高可用的服务器,可以是多个,各个客户端与各自对应的单元连接,可以将预设的第一容灾切换规则发送至各个客户端中;可以理解的是,在首次接收到第一容灾切换规则之前,客户端本地的第二容灾切换规则为空。
具体地,客户端在接收到第一容灾切换规则之后,可以对第一容灾切换规则进行校验,若校验通过,则应用第一容灾切换规则更新第二容灾切换规则,否则,输出报警信息并中止当前操作。对第一容灾切换规则进行校验可以包含有:校验第一容灾切换规则中是否均为数字,若是,则校验通过,否则校验失败;校验第一容灾切换规则中的分片值之和是否等于预设的分片值总和,若是,则校验通过,否则校验失败等。
具体地,所述客户端可以设有用于各个应用完成单元化服务调用的软件开发工具包SDK,配置中心用于完成容灾切换规则的配置和下发,下发给各个单元的客户端,即客户端归属于某一个单元,配置中心全局唯一,负责完成所有单元所有下的客户端的容灾切换规则调整。
进一步地,可以在客户端启动时,将预设的第一容灾切换规则发送至各个单元的客户端中;在容灾切换装置中的第一容灾切换规则发生变动时,实时将预设的第一容灾切换规则发送至各个单元的客户端中。
为了避免配置中心故障导致无法容灾切换,在这种场景下,客户端本地的容灾切换规则开始作用,保障容灾切换的正常执行,进而提高交易的可靠性,在本申请一个实施例中,所述的容灾切换方法,还包括:
步骤002:若确定所述单元部署架构对应的配置中心处于故障状态,则应用所述客户端接收目标交易请求,以使所述客户端根据预设的取模算法和第二容灾切换规则,确定所述目标交易请求对应的运行单元和灾备单元;若所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,该灾备单元执行所述目标交易请求对应的交易。
举例来说,原本分片值为1至32的交易请求路由至单元1,现在计划将分片值为1至32的交易请求路由至单元2,如果配置中心故障,则会按照客户端本地的容灾切换规则中发版时配置的默认值执行,能够避免匹配不到容灾切换规则导致无法路由的问题。
为了进一步提高确定目标交易请求对应的运行单元和灾备单元的准确性,进而保证目标交易的正常执行,参见图2,在本申请一个实施例中,步骤200包括:
步骤201:根据预设的取模算法,确定所述目标交易请求对应的分片值。
举例来说,hash按照128取模算法对目标交易请求中的卡尾号进行处理,得到卡尾号的分片值,该分片值在1至128之内。
步骤202:从预设的第一容灾切换规则中获得分片值为所述目标交易请求对应的分片值的规则记录,将该规则记录对应的运行单元确定为所述目标交易请求对应的运行单元,将该规则记录对应的灾备单元确定为所述目标交易请求对应的灾备单元。
举例来说,目标交易请求对应的分片值为10,从预设的第一容灾切换规则找到分片值为10的规则记录,将该规则记录对应的运行单元确定为所述目标交易请求对应的运行单元,将该规则记录对应的灾备单元确定为所述目标交易请求对应的灾备单元。
为了保证单元处于正常状态时交易的执行,参见图3,在本申请一个实施例中,在步骤200之后,还包括:
步骤400:若确定所述目标交易请求对应的运行单元处于正常状态,则将所述目标交易请求发送至所述运行单元,执行所述目标交易请求对应的交易。
为了在运行单元故障时,保证灾备单元正常运行,参见图4,在本申请一个实施例中,在步骤200之前,还包括:
步骤021:根据均衡负载算法,确定预设的取模算法对应的各个分片值各自对应的运行单元和灾备单元。
举例来说,hash按照128取模算法对应的分片值包括1至128共128个值;若单元个数为4个,可以随机将125个值平均分配至各个单元,再将剩余3个值随机分配至3个单元中;也可以轮询将128个值分配至各个单元,即,1、5、9……对应的运行单元为单元1,2、6、10……对应的运行单元为单元2,依次类推……直至分配完所有分片值;若单元1对应的分片值为1至32,可以轮询将32个值分配至其它各个单元,即,1、4、7……对应的灾备单元为单元2,2、5、8……对应的灾备单元为单元3,依次类推……直至分配完32个分片值;便于接下来根据目标交易请求对应的分片值,找到目标交易请求对应的运行单元和灾备单元,同时,能够避免在单元故障时,将其对应的所有交易分配至另一单元时,造成另一单元的运行压力,提高容灾切换系统的可靠性。
步骤022:根据各个分片值各自对应的运行单元和灾备单元,得到所述第一容灾切换规则。
具体地,所述第一容灾切换规则可以包含有分片值、运行单元唯一标识和灾备单元唯一标识及三者的对应关系,运行单元唯一标识和灾备单元唯一标识可以为编号,用于区别不同的单元,所述第一容灾切换规则中可以均为数字。
为了进一步说明本方案,本申请提供一种容灾切换方法的应用实例,在本应用实例中,所述容灾切换方法包括:
步骤1):初始化容灾机制,客户端在启动的过程中,初始化本地的容灾切换规则,主要动作有加载本地的容灾切换规则到本地缓存中,连接配置中心,接收配置中心推送的容灾切换规则。
步骤2):交易发生时,根据具体设定的业务特性,按照特有的算法计算出对应的单元属性,进一步根据该值计算出容灾特性。
具体地,在支付交易场景中,业务特性可以是卡尾号或者整个卡号,也可以是手机号。特有的算法:可以是取模算法,也可以是用户自定义的算法,如,hash按照128取模算法;取模后会计算出一个分片值(1-128之间的某一个数字),这个数字必然归属于某一个单元,这个映射关系可以称之为这个业务特性的下单元属性;容灾特性指的是交易对应的单元化部署架构下的一系列容灾机制计算(包括这一系列动作)及最后计算出的结果;每一个单元都有自己的容灾规则,可以根据单元和单元的容灾规则的映射关系确定单元的容灾特性。
步骤3):容灾规则匹配;即由步骤2)计算出的分片值,在配置中心推送的容灾切换规则中的多条规则记录逐条查找,找到匹配值(匹配值是指与具体某一笔交易计算出的分片值相等的配置中心推送的容灾切换规则中的分片值,则将交易对应的交易信息发送至该匹配值所属的规则记录对应的运行单元或灾备单元中。
步骤4):容灾规则更新-生效,当配置中心中的容灾切换规则发生变更时,配置中心将变更后的容灾切换规则实时发送至客户端,便于下次交易发生时直接使用,避免每次计算增加耗时。
具体地,客户端启动时会主动同步一次配置中心的容灾切换规则,启动后会增加对配置中心的监听,一旦配置中心有变动就会感知到,进一步更新数据。
由上述描述可知,本应用实例提供的容灾切换方法,实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而提高交易过程的可靠性;具体地,支持单元部署架构下的容灾切换支持多维度的容灾切换,当其中某一单元故障后,可以线上实时实现单元级接管:可以将单元故障容灾切换方案嵌入单元路由中;支持多维度切换规则(单元、分片、应用级、服务级),满足不同场景下的应急需求;能够实现业务无感知。
从软件层面来说,为了实现单元之间的容灾切换,节省系统资源并且提高单元灾备的可靠性,进而提高交易过程的可靠性,本申请提供一种用于实现所述容灾切换方法中全部或部分内容的容灾切换装置的实施例,参见图5,所述容灾切换装置具体包含有如下内容:
接收模块10,用于接收目标交易请求;
确定模块20,用于根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
容灾切换模块30,用于若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
在本申请一个实施例中,所述的容灾切换装置,还包括:
更新模块,用于将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
本说明书提供的容灾切换装置的实施例具体可以用于执行上述容灾切换方法的实施例的处理流程,其功能在此不再赘述,可以参照上述容灾切换方法实施例的详细描述。
为了进一步说明本方案,本申请提供一种容灾切换系统的实施例,在本实施例中,所述容灾切换系统包括:所述的容灾切换装置和单元部署架构;其中,所述单元部署架构包括:客户端和多个单元;各个单元分别与所述客户端和容灾切换装置通信连接。
在本申请一个容灾切换系统的应用实例中,所述客户端由默认规则本地缓存装置、的那元规则本地缓存装置、分片规则本地缓存装置、应用规则本地缓存装置、服务规则本地缓存装置、监听单元、校验单元、临时缓存单元、深度克隆单元、规则识别单元组成,其中,默认规则本地缓存装置、的那元规则本地缓存装置、分片规则本地缓存装置、应用规则本地缓存装置、服务规则本地缓存装置各个装置并行存在,共同作用于配置中心推送过来的数据;配置中心由分片单元、接管单元、应用级接管单元、推送单元组成,调整单元与分片单元相连,分片单元与接管单元相连、接管单元与应用级接管单元相连、应用级接管单元与推送单元相连。
客户端中的默认规则本地缓存装置、的那元规则本地缓存装置、分片规则本地缓存装置、应用规则本地缓存装置、服务规则本地缓存装置等装置均包括两部分:关键信息唯一索引值和特征值。关键信息唯一索引值不允许重复,如有重复则新的值会将旧的值覆盖,特征值根据相应的属性设置即可;关键信息唯一索引值可以相当于上述的分片值,特征值可以相当于上述分片值对应的单元。
监听单元由客户端连接和工作域监听两部分组成,客户端连接完成与配置中心的连接,工作域监听负责完成对应的工作域监听,当配置中心发生变化时,配置中心会将变动消息推送值监听域,监听域监听到消息变动后,会将信息同步到本地客户端。
校验单元由各个缓存装置对应的规则组成,主要功能顾名思义就是为了完成响应规则的校验,一旦发生不合规的推送信息,则报警并终止本次推送。
临时缓存单元与本地缓存单元的区别为:临时缓存单元是为了防止直接操作本地缓存单元带来的风险而设置的,如果没有临时缓存单元,直接操作本地缓存会导致更新期间部分规则无法匹配,进一步导致交易失败,影响生产环境的稳定运行。有了临时缓存单元,一旦配置中心发生变化,首先更新的是临时缓存单元,更新期间,本地缓存单元无感知,不会影响到实时交易。
深度克隆装置由字节流单元、内存分配机制、克隆体三部分组成。工作原理为根据给定的信息(如本地缓存装置)生成字节流文件,为这些新生成的字节流文件重新分配内存,最后返回可用的克隆体。
规则识别单元用于设别不同的规则,即用于识别各个本地缓存装置对应的规则。规则识别单元由本地缓存装置索引、本地缓存装置规则、规则识别器三部分组成。本地缓存装置索引用于规则更新后能将更新信息同步到本地缓存装置中,本地缓存装置规则用于存储各个缓存机制特有的规则,规则识别器用来完成具体规则的解析和识别,同时配合本地缓存装置索引完成本地缓存装置的更新。
分片单元结构与本地缓存装置一样,主要用于存储设置的分片规则。配置中心的接管单元、应用级接管单元结构与分片单元一样,都是由唯一键、属性值组成,区别在于分片单元存储的是按照特定规则划分后的具体分片信息,接管单元存储的是每个单元的接管单元,应用级接管单元存储的是各个应用的集群接管配置属性。
推送单元由工作域索引监听和结果推送两部分组成,当检测到工作域索引有变动后,由结果推送部分将变动结果推送至客户端。
图6为本发明一实施例提供的电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)401、通信接口(Communications Interface)402、存储器(memory)403和通信总线404,其中,处理器401,通信接口402,存储器403通过通信总线404完成相互间的通信。处理器401可以调用存储器403中的逻辑指令,以执行如下方法:接收云资源任务请求;根据所述云资源任务请求,确定所述云资源任务的调用接口,以使该调用接口对应的第三方云平台根据所述任务必要数据执行所述云资源任务请求对应的云资源任务。
此外,上述的存储器403中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:接收目标交易请求;根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:接收目标交易请求;根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种容灾切换方法,其特征在于,包括:
接收目标交易请求;
根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易;
所述预设的第一容灾切换规则包括:多条规则记录,每条规则记录包括:交易对应的分片值、运行单元和灾备单元之间的对应关系,每个运行单元对应多个分片值,每个灾备单元对应多个分片值;
所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元,包括:
根据预设的取模算法,确定所述目标交易请求对应的分片值;
从预设的第一容灾切换规则中获得分片值为所述目标交易请求对应的分片值的规则记录,将该规则记录对应的运行单元确定为所述目标交易请求对应的运行单元,将该规则记录对应的灾备单元确定为所述目标交易请求对应的灾备单元。
2.根据权利要求1所述的容灾切换方法,其特征在于,在所述接收目标交易请求之前,还包括:
将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
3.根据权利要求2所述的容灾切换方法,其特征在于,还包括:
若确定所述单元部署架构对应的配置中心处于故障状态,则应用所述客户端接收目标交易请求,以使所述客户端根据预设的取模算法和第二容灾切换规则,确定所述目标交易请求对应的运行单元和灾备单元;若所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,该灾备单元执行所述目标交易请求对应的交易。
4.根据权利要求1所述的容灾切换方法,其特征在于,在所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元之后,还包括:
若确定所述目标交易请求对应的运行单元处于正常状态,则将所述目标交易请求发送至所述运行单元,执行所述目标交易请求对应的交易。
5.根据权利要求1所述的容灾切换方法,其特征在于,在所述根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元之前,还包括:
根据均衡负载算法,确定预设的取模算法对应的各个分片值各自对应的运行单元和灾备单元;
根据各个分片值各自对应的运行单元和灾备单元,得到所述第一容灾切换规则。
6.一种容灾切换装置,其特征在于,包括:
接收模块,用于接收目标交易请求;
确定模块,用于根据预设的取模算法和第一容灾切换规则,确定单元部署架构下所述目标交易请求对应的运行单元和灾备单元;
容灾切换模块,用于若确定所述目标交易请求对应的运行单元处于故障状态,则根据所述目标交易请求对应的灾备单元执行容灾切换过程,以将所述目标交易请求发送至所述灾备单元,执行所述目标交易请求对应的交易;
所述预设的第一容灾切换规则包括:多条规则记录,每条规则记录包括:交易对应的分片值、运行单元和灾备单元之间的对应关系,每个运行单元对应多个分片值,每个灾备单元对应多个分片值;
所述确定模块,包括:
根据预设的取模算法,确定所述目标交易请求对应的分片值;
从预设的第一容灾切换规则中获得分片值为所述目标交易请求对应的分片值的规则记录,将该规则记录对应的运行单元确定为所述目标交易请求对应的运行单元,将该规则记录对应的灾备单元确定为所述目标交易请求对应的灾备单元。
7.根据权利要求6所述的容灾切换装置,其特征在于,还包括:
更新模块,用于将预设的第一容灾切换规则发送至单元部署架构下的各个单元的客户端中,以使所述客户端根据所述预设的第一容灾切换规则更新本地的第二容灾切换规则。
8.一种容灾切换系统,其特征在于,包括:权利要求6或7所述的容灾切换装置和单元部署架构;其中,
所述单元部署架构包括:客户端和多个单元;
各个单元分别与所述客户端和容灾切换装置通信连接。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至5任一项所述的容灾切换方法。
10.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述指令被执行时实现权利要求1至5任一项所述的容灾切换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210070967.1A CN114422331B (zh) | 2022-01-21 | 2022-01-21 | 容灾切换方法、装置及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210070967.1A CN114422331B (zh) | 2022-01-21 | 2022-01-21 | 容灾切换方法、装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114422331A CN114422331A (zh) | 2022-04-29 |
CN114422331B true CN114422331B (zh) | 2024-04-05 |
Family
ID=81275975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210070967.1A Active CN114422331B (zh) | 2022-01-21 | 2022-01-21 | 容灾切换方法、装置及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114422331B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115599606B (zh) * | 2022-11-16 | 2023-03-21 | 恒丰银行股份有限公司 | 一种灾备切换方案的生成方法、设备及介质 |
CN115860734A (zh) * | 2022-12-12 | 2023-03-28 | 上海汇付支付有限公司 | 一种单元化支付方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763386A (zh) * | 2016-05-13 | 2016-07-13 | 中国工商银行股份有限公司 | 业务处理系统及方法 |
CN108011737A (zh) * | 2016-10-28 | 2018-05-08 | 华为技术有限公司 | 一种故障切换方法、装置及系统 |
CN109492013A (zh) * | 2018-11-02 | 2019-03-19 | 北京京东金融科技控股有限公司 | 应用于数据库集群的数据处理方法、装置和系统 |
CN110334304A (zh) * | 2019-06-05 | 2019-10-15 | 上海易点时空网络有限公司 | 基于布局容灾的配置方法及系统 |
CN111966530A (zh) * | 2020-07-21 | 2020-11-20 | 招联消费金融有限公司 | 应用系统灾备切换方法、装置、计算机设备和存储介质 |
-
2022
- 2022-01-21 CN CN202210070967.1A patent/CN114422331B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105763386A (zh) * | 2016-05-13 | 2016-07-13 | 中国工商银行股份有限公司 | 业务处理系统及方法 |
CN108011737A (zh) * | 2016-10-28 | 2018-05-08 | 华为技术有限公司 | 一种故障切换方法、装置及系统 |
CN109492013A (zh) * | 2018-11-02 | 2019-03-19 | 北京京东金融科技控股有限公司 | 应用于数据库集群的数据处理方法、装置和系统 |
CN110334304A (zh) * | 2019-06-05 | 2019-10-15 | 上海易点时空网络有限公司 | 基于布局容灾的配置方法及系统 |
CN111966530A (zh) * | 2020-07-21 | 2020-11-20 | 招联消费金融有限公司 | 应用系统灾备切换方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114422331A (zh) | 2022-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107332876B (zh) | 区块链状态的同步方法及装置 | |
CN114422331B (zh) | 容灾切换方法、装置及系统 | |
CN109189751A (zh) | 基于区块链的数据同步方法及终端设备 | |
CN110569309A (zh) | 用于实现区块链的设备、方法、系统以及介质 | |
WO2019210580A1 (zh) | 访问请求处理方法、装置、计算机设备和存储介质 | |
CN111698315B (zh) | 针对区块的数据处理方法、数据处理装置及计算机设备 | |
CN108846745B (zh) | 区块链交易处理辅助系统、区块链数据处理系统及方法 | |
CN111737236B (zh) | 智能快递柜业务的数据管理方法及系统 | |
CN110008206A (zh) | 一种基于区块链系统的数据处理方法及装置 | |
CN111447069B (zh) | 一种基于区块链的低频访问数据处理方法 | |
US20230367749A1 (en) | Data migration method and apparatus, device, medium, and computer product | |
CN106713391A (zh) | 一种session信息的共享方法和共享系统 | |
CN110019231A (zh) | 一种并行数据库动态关联的方法及节点 | |
AU2019381980A1 (en) | Taking snapshots of blockchain data | |
CN111158949A (zh) | 容灾架构的配置方法、切换方法及装置、设备和存储介质 | |
CN112492022A (zh) | 提高数据库可用性的集群、方法、系统及存储介质 | |
CN110111095B (zh) | 支付交易判重方法及支付系统 | |
CN109947844B (zh) | 一种基于医疗区块链的医疗数据管理系统 | |
CN110784498B (zh) | 一种个性化数据容灾方法及装置 | |
CN110019481A (zh) | 内存数据库访问方法、装置、设备及介质 | |
CN115065686B (zh) | 分布式负载均衡系统的配置方法、装置及系统 | |
CN115412610A (zh) | 故障场景下的流量调度方法及装置 | |
CN112711465B (zh) | 基于云平台的数据处理方法、装置、电子设备及存储介质 | |
CN111404737B (zh) | 一种容灾处理方法以及相关装置 | |
JPH07114495A (ja) | 多重化ファイル管理方式 |
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 |