查看原文
其他

观点 | 《金融信息系统多活技术规范》解读及设计方案分析

金融电子化 金融电子化 2022-10-19

欢迎金融科技工作者积极投稿!

投稿邮箱:newmedia@fcmag.com.cn

                                           ——金融电子化


网联清算有限公司首席技术专家  强群力


业务连续性对于金融行业至关重要。伴随着分布式架构转型,多活技术在业务连续性上的优势逐渐被金融行业接受,但各方对多活技术的理解仍存在差异,对多活能力的要求缺乏统一认识,在概念内涵、系统架构、技术能力、应用策略等方面未达成共识,在一定程度上影响了这一技术在金融行业的实施效果,亟待统一认识,规范核心概念。


在人民银行科技司的指导下,网联公司牵头组织行业内有关单位编制了《金融信息系统多活技术规范》系列金融行业标准。笔者将解读此系列标准,并结合标准对系统设计方案进行分析。


多活信息系统的基本概念

1.特征和内涵。标准中对多活信息系统的特征和内涵进行了提炼,主要有如下几点。一是多地理节点部署信息系统。信息系统部署在多个地理节点,各地理节点的位置选择宜综合考虑电力、网络、供水等基础设施的容灾因素,包括独立的空调、电力设施、计算、网络、存储等物理资源。二是业务并行多点接入、处理和存储。各多活子信息系统(即多活信息系统的子节点)同时支持业务接入、同时支持处理业务逻辑、同时提供数据存储,并支持灵活调整各子节点工作分配,且保证其他子节点存在与业务处理结果一致、可用的数据副本,部分地理节点的灾难和故障不影响其他地理节点上多活子节点的业务接入、业务处理、数据存储。三是当某个子节点发生灾难或故障时,只有部分业务受到影响并需要分配到其他子节点进行处理。


2.业务视图。如图1所示,多活信息系统的业务视图描述了参与方信息系统与多活信息系统之间的业务交互关系。一是参与方信息系统不需要关注多活信息系统的内部工作方式,只需要通过网络接入多活信息系统,将业务流量接入多活信息系统的多个子节点。二是业务流量分配上,多活信息系统的多个子节点作为一个整体,承载全部的业务流量,可以根据参与方信息系统与多活信息系统约定的策略,将业务流量分配到多个子节点。

图1    多活信息系统业务视图


多活参考架构

1.架构体系。多活信息系统通常拆分为业务接入层、业务处理层、数据存储层。业务接入层主要负责业务多点接入和灵活路由,将业务流量按照一定的路由策略发送至业务处理层;业务处理层负责业务逻辑处理,调用数据存储层功能,实现数据读写;数据存储层负责接收业务处理层的调用进行数据持久化操作,实现数据的多点读写功能。标准中对于参与方系统接入、业务接入层、业务处理层、数据存储层分别提出技术要求,并且对于监控功能要求、业务流量分配变更等方面分别提出技术要求。


2.关键指标。多活信息系统的关键指标包括多活业务集中度、多活同城业务集中度、多活业务接管时间、多活数据恢复点目标、多活接管容量能力,这些关键指标共同决定了多活信息系的整体能力。具体说明见表1。


表 1  多活信息系统关键指标


多活应用策略

标准中提出了金融信息系统多活技术的应用策略,金融机构可以根据自身业务需要,参考这些策略进行多活信息系统的规划、设计、建设和维护。


根据应用场景,将金融信息系统分为计算型系统、查询型系统、流水型系统和账户型系统四种类型。对于不同类型,多活的应用效果和应用策略存在差异。标准中从系统并行策略、接入和路由策略、数据冗余和一致性策略、业务幂等处理策略、可用性策略等几个方面,给出了策略建议。


1.流水型系统。典型的流水型系统包括银行渠道系统、转接清算系统、非银行支付机构的快捷支付系统等。其主要功能是实现实时支付、证券交易、订单等业务的发起方和接收方之间的转接功能。对于此类系统,业务请求和业务请求响应需要实时转发至业务发起方和业务接收方,对系统的实时性有较高要求,但关键数据(如交易涉及的账户数据)的一致性由业务发起方和接收方保证,流水型系统对业务的流水信息进行记录。引入多活技术,一方面可以实现业务流水信息(如订单、交易信息等)的多点存储和业务的多点转接,另一方面在发生灾难或故障时,其它多活子信息系统仍可接管业务流水信息记录和业务转接。其重点策略是幂等性策略和可用性策略。在标准中,以支付机构快捷支付系统为例进行了说明。在幂等性方面,包括多层幂等机制、全局幂等机制、业务最终幂等机制等应用策略;在可用性方面,包括多活子信息系统内部可用性、多活子信息系统之间可用性,以及监控功能、限流、降级等应用策略。


2.账户型系统。典型的账户型系统包括银行保险、证券、非银行支付机构的各类账户系统等,主要实现账户信息、用户信息等业务数据的处理和记录。此类系统需要优先保障关键数据的一致性,当灾难或故障发生时,应在达到关键数据一致性的前提下,实现业务可用性。引入多活技术,一方面可以将账户拆分到多个多活子信息系统,并行进行账务处理,另一方面当故障或灾难事件发生时,只有部分账户受到影响,并可将其业务流量变更至其他多活子信息系统。


账户型系统中的流水记录功能模块可以参照流水型应用策略实现多活。而账户型系统自身重点要实现数据冗余和一致性策略,在标准中给出了数据多副本存储和复制机制、启用备用数据、主数据恢复、热点账户问题等相关策略。


3.计算型系统。计算型系统的典型应用是清分清算、风险控制、商户结算等相关的计算,还包括金融领域的各种科学、工程、数据分析、音视频处理等相关的计算。其对输入的业务进行计算,并将结果输出至其他系统。此类系统重点保障计算应用的可用性和准确性。引入多活技术,一方面可实现多点计算、多点输出结果,另一方面在出现灾难或故障时,直接取用其他多活子信息系统的计算结果。


标准中以清分系统为例说明多活在计算型系统中的应用。计算所需数据分散在分布式系统中,清分系统采集交易记录,将交易记录汇总并轧差。针对其难点问题,标准中给出了多点采集数据、多点计算、合并结果的并行策略,还给出了核对、判决、兜底的数据一致性保障策略。


4.查询型系统。实现对用户提供查询结果,典型的应用是提供各种用户信息、交易记录、交易行情、订单记录、发布信息等相关查询。此类系统中的查询应用不会对系统存储的数据进行修改(或者查询业务量比率远大于写入业务量),数据由外部系统导入。此类系统重点保障查询应用的可用性,以及被查询数据的多副本存储、多副本之间的一致性。标准中以网络支付业务中的商户信息系统为例,其提供商户的注册、信息的维护以及信息的查询。标准中对系统静态数据和动态数据的一致性策略分别给出了建议。


应用案例分析

以网络支付清算平台(简称“网联平台”)为例,介绍多活架构设计。


1.整体部署方式(对应标准中的架构体系)。表2对各种部署方式的多活关键指标进行了分析。一是,三地六中心部署方式。网联平台在北京、上海和深圳部署各2个多活子节点。二是,对于多活业务接管时间、多活数据恢复点目标、多活接管容量能力等其他关键指标,各种部署方式没有本质区别。三是,四地八中心多活能力更强,但对资源要求也更高,是可能的演进方案。


表 2  整体架构选择


2.应用部署方面(对应标准中的业务处理层)。每个数据中心架构相同、应用相同,互为备用。


3.网络传输方面(对应标准中的业务接入层)。在网联平台内部、以及平台与平台参与方之间通信网络的专线互联采用冗余配置。


4.数据冗余和一致性方面(对应标准中的数据存储层)。支持本地备份、同城备份、异地备份。网联平台在本地数据、同城备份数据、异地备份数据之间建立了及时准确的同步机制。


5.整体对外服务方面(对应标准中的业务视图)。借助多活架构特点,网联平台实测估算的处理极值6个数据中心合计可达25.2万笔/秒处理能力。网联平台保证交易、对账、清算的一致性。


展            望

多活系列标准的发布有助于金融机构开展多活信息系统相关工作,为金融机构提供多活技术的指导,提高金融信息系统的业务连续性能力,防范运行风险,提升金融服务水平。


(栏目编辑:韩维蜜)




往期精选:

(点击查看精彩内容)


● 观点 | 数据分析助力远程银行中心精细化管理

● 观点 | 商业银行客服中心精准营销探析

● 观点 | 比起银行与保险,国内券商为何更需要开展数字化转型?

● 观点 | 中小银行IT运维转型浅析

● 观点 | 数字经济激发时代使命,光大科技加快培育新动能











《金融电子化》新媒体部:主任 / 邝源  编辑 / 傅甜甜 潘婧

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存