可靠性事件模式线上运用
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,最近完成一个项目,使用springboot微服务架构。不免遇到分布式事务的难题。业务情况是:用户可以使用积分和返利来支付订单,在订单创建的事件中,需要占用积分账户和返利账户,然后消费积分,消费返利,最
千家信息网最后更新 2025年01月31日可靠性事件模式线上运用
最近完成一个项目,使用springboot微服务架构。不免遇到分布式事务的难题。业务情况是:用户可以使用积分和返利来支付订单,在订单创建的事件中,需要占用积分账户和返利账户,然后消费积分,消费返利,最后完成订单创建。实际开发中,积分和返利都是另外第三方的系统,不可能提供给我们许多接口,因此,分布式事务最后采用了可靠性事件模式。总体上保证数据一致性。
本地事件表
微服务在同一个本地事务中记录业务数据和事件。
微服务实时发布一个事件立即通知关联的业务服务,如果事件发布成功立即更新记录的事件状态。
- 事件恢复服务定时从事件表中恢复未发布成功的事件,重新发布,重新发布成功才更新记录的事件状态。
补偿模式
补偿模式是更复杂的业务处理逻辑,可以允许有逆操作的业务可以使用该模式。
(微服务实现补偿操作不是简单的回退到业务发生时的状态,因为可能还有其他的并发的请求同时更改了状态。一般都使用逆操作的方式完成补偿。)补偿模式使用一个额外的协调服务来协调各个需要保证一致性的微服务,协调服务按顺序调用各个微服务,如果某个微服务调用异常(包括业务异常和技术异常)就取消之前所有已经调用成功的微服务。
TCC模式和补偿模式一样需要需要有协调服务和工作服务,协调服务也可以作为通用服务一般实现为框架。与补偿模式不同的是 TCC 服务框架不需要记录详细的业务流水,完成 confirm 和 cancel 操作的业务要素由业务服务提供。
服务
事件
业务
模式
补偿
成功
状态
积分
事务
订单
一致
一致性
数据
框架
账户
保证
更新
消费
可靠性
不同
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
贝林电表数据库清空
网络安全审查办公室
网络技术专业配电脑
佛山c 软件开发
华为网络技术实战案例
要加强网络安全
seafile数据库密码
ping数据库IP步骤
无线网络技术特点的描述
常州运营网络技术哪家便宜
目前最全的传世db数据库
为什么catia服务器无法安装
软件开发者内测消费者版本
个人注册数据库可以
软件开发考研难吗
现代空间信息网络技术
贵州翌宸志信软件开发
山东信联网络技术有限公司
从事软件开发的工作
一般网络安全设置设什么
外包软件开发公司靠谱吗
如何提高网络安全信息管理
国家推行网络安全 建设
网络安全涉及四方面
联合国对缅甸网络安全法草案
电脑网络技术学院风拍照
兄弟互联网科技有限公司
数据库注册清理工具
系统数据库有哪些数据库
关系数据库中关系具有的性质