《生来创新-金融级云原生》——2 金融级云原生的“新标准和新蓝图”——2.2 定义金融云原生的10大新要素——要素 8:金融级一致性

简介: 《生来创新-金融级云原生》——2 金融级云原生的“新标准和新蓝图”——2.2 定义金融云原生的10大新要素——要素 8:金融级一致性

image.png


云原生应用以布式系统为主,应用会被切分到多个分布式的微服务系统下,拆分一般分 为水平分和垂直拆分,这并不仅仅单指对数据库或者缓存的拆分,主要是表达一种分而治之 想和逻辑。


式系统的底层无法逃离CAP 的不可能三角” (C: Consistency,  一 致 性;A: Availability  可用性;P: Partition tolerance,  分区容忍性)。CAP 原理证明,  任何分布式 系统只可同时满足以上点,无法三者兼顾。而分布式的服务化系统都需要满足分区容忍性, 那么必须在一致和可用性之间进行权衡。如果网络发生异常情况,导致分布式系统中部分节 点之间的网络延迟不断大,可能会导致分布式系统出现网络分区。复制操作可能会被延后, 如果这时我们的使用方等待复制完成再返回,则可能导致在有限时间内无法返回,就失去了可 用性;而如果使方不等待复制完成,而在主分片写完后直接返回,则具有了可用性,但是失 去了一致性。


对金融机构而言,架构层面的高可用和业务层面的强一致性,几乎同样重要。这就需要金  融级云原生能够很好地平衡“CAP 的不可能三角”,需要尽可能兼顾业务强一致与系统高可用。


但是“一致性挑战”在分布式系统中绝不仅仅是一个数据库问题,而是一个大的话题,涵 布式系统的各个层面:事务一致性、节点一致性、系统间业务一致性、消息幂等一致性、 缓存一致性、跨 IDC 一致性等等。所以也需要云原生架构有一系列技术能够应对金融级对一致 性的严苛挑战。


事务需要根据不同的金融场景选择合适的分布式事务模式,在平衡成本和性能后, SAGA TCC 是目前金融机构比较常用的两种分布式事务模式。SAGA 模式对应用实现侵 入性更小,但基于偿事务来保障一致性的设计、前后步骤执行过程中不保证事务隔离性;而 TCC 模式能做到比较好的事务隔离性,但需要应用层感知更多的复杂度。对于事务流程中部分 不需要同步返回结果的节点,为提高执行效率可采用异步消息队列实现,对于一些事务流程较 长的场景可明显降低事务实现复杂度、削峰填谷。典型场景如客户购买理财场景简化分为存款 户扣款和理财账户入账两个步骤,如选用 SAGA 模式,存款账户成功扣款后、理财账户入账 失败,客户看到“钱已付、货没到”的中间异常状态,需要系统进行冲正存款账户扣款来保 事务一致性。若选用 TCC 模式,先后完成存款账户扣款、理财账户入账的逻辑处理,各自 需要存款系统和理财系统记录逻辑处理的状态,二者均成功后再发起统一提交。


数据库级:融场景下对于数据不丢有着极致的要求,一方面需要在同城、异地多个机房 保存多个副本,另一方面需要在多个副本之间实现数据同步,保障同城 RPO 为零、异地 RPO 接近零。Paxos 算法是基于消息传递的实现分布式系统数据一致性的算法,是至今为止公认 实现致性的最有效的算法之一,分布式数据库通过对 Paxos 的支持来实现跨多服务器,甚 至跨多中心的数据一致性保证。


机房级:跨机房的由能力、异常事务的跨机房恢复能力。发生机房故障时,数据库需要 能够切到同城 / 地的副本、并保障 RPO 为零,配合应用层的交易路由切换,完成机房级容 灾切换、恢复业务期间因机房故障导致的部分交易事务流程中断,分布式事务组件需要具备 自动恢复能力,重新启动中断的事务流程按事先设定的业务规则向前完成或向后冲正。

相关文章
|
运维 Cloud Native 持续交付
云原生架构:未来软件开发的蓝图
【6月更文挑战第6天】随着云计算技术的不断进步,云原生架构已经成为推动现代软件开发的重要力量。本文将深入探讨云原生的概念、核心组件以及它如何改变应用程序的开发、部署和运维方式。通过分析云原生的优势,我们将揭示这一趋势如何为企业带来更高的效率、灵活性和创新能力。
|
边缘计算 运维 Cloud Native
云原生技术的崛起:重新定义软件开发与运维
云原生技术的崛起:重新定义软件开发与运维
|
Cloud Native
云原生部署问题之什么是结构体,并给出一个结构体的定义和初始化示例
云原生部署问题之什么是结构体,并给出一个结构体的定义和初始化示例
200 10
|
Cloud Native API 云计算
云原生技术:构建现代应用的蓝图
在数字化浪潮推动下,企业正迅速采纳云原生技术以加速创新和响应市场。本文将探讨云原生的核心概念、优势以及如何通过实践案例促进企业转型。
|
人工智能 Cloud Native 安全
云原生技术的融合与创新:构建未来的软件定义世界
【6月更文挑战第5天】随着企业数字化转型的深入,云原生技术以其灵活性、可扩展性及成本效益成为推动这一进程的关键力量。本文将探讨云原生技术的核心概念、优势以及它如何与其他先进技术如人工智能和大数据相结合,为企业带来前所未有的效率提升和业务创新。
|
Cloud Native 关系型数据库 分布式数据库
云原生数据库2.0问题之DBStack的定义如何解决
云原生数据库2.0问题之DBStack的定义如何解决
|
弹性计算 Cloud Native 安全
【阿里云云原生专栏】云原生与芬克斯:阿里云函数计算在金融行业的应用案例
【5月更文挑战第26天】阿里云函数计算在金融行业数字化转型中发挥关键作用,提供高可用、安全、灵活且成本效益的解决方案。通过事件驱动架构和弹性伸缩,适应业务波动,确保服务连续性。在实时风控系统案例中,函数计算实现低延迟评估,提升风控效率。此技术助力金融企业快速创新,增强市场竞争力。
684 0
|
JSON Kubernetes Cloud Native
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)
云原生|kubernetes|多集群管理之kubeconfig文件配置和使用(定义,使用方法,合并管理多集群)
2269 0
|
机器学习/深度学习 自然语言处理 Cloud Native
探索在云原生环境中构建的大数据驱动的智能应用程序的成功案例,并分析它们的关键要素。
大数据索引: Google使用大数据索引来构建其搜索引擎,并实时处理全球各种语言的文本数据。 云原生基础设施: Google Cloud提供了强大的云原生基础设施,支持大规模数据存储和处理。 自然语言处理: Google使用自然语言处理技术来理解和索引文本数据,从而提供高质量的搜索结果。 实时搜索: Google的
459 0

热门文章

最新文章