ACID过时?用 Sagas搞定数据一致性(6)

简介: ACID过时?用 Sagas搞定数据一致性(6)

image.png



Choreography (编排):
distributed decision making vs.

Orchestration(协调): centralized decision making


image.png


方案1:使用事件做基于编排模式的协作


image.png


优缺点:

Benefits (好处

简单,尤其使用事件溯源时

参与者松耦合

Drawbacks (缺点)

循环依赖

领域对象过载,例如订单和客户相互知道太多

Events = ndirect way to make something happen to make something happen


image.png


选项2:基于编排的saga协调


image.png


saga(orchestrator 是一个持久性对象,跟踪saga的状态,以及调用参与者


image.png


image.png

相关文章
|
机器学习/深度学习
集合论—笛卡尔积与二元关系
集合论—笛卡尔积与二元关系
|
4月前
|
固态存储 Windows
固态硬盘如何正确分区?SSD实用分区方案
固态硬盘(SSD)已成为提升电脑速度的关键。本文详解SSD正确分区方法,避免性能下降与寿命缩短,教你如何合理分区分区、设置4K对齐,并提供Windows磁盘管理与DiskGenius两种实用分区方案,助你高效使用SSD。
|
JavaScript 前端开发 Shell
NPM 自定义 package.json 中 scripts 命令(& 与 && 的区别,cross-env 的使用)
NPM 自定义 package.json 中 scripts 命令(& 与 && 的区别,cross-env 的使用)
634 0
|
算法 调度 C语言
C/C++学习 -- SHA-256算法
C/C++学习 -- SHA-256算法
811 0
|
自然语言处理 Linux Windows
Cmder - 想让你的windows下 cmd 和 SecureCRT 操作 Linux 一样帅吗 附字符集编码 chcp 936、chcp 65001
Cmder - 想让你的windows下 cmd 和 SecureCRT 操作 Linux 一样帅吗 附字符集编码 chcp 936、chcp 65001
294 1
|
自然语言处理 计算机视觉
单一ViT模型执行多模态多任务,谷歌用协同训练策略实现多个SOTA
单一ViT模型执行多模态多任务,谷歌用协同训练策略实现多个SOTA
997 0
|
存储 安全 数据安全/隐私保护
旧电脑回收前怎么清除数据
随着技术迭代,处理旧电脑时需确保数据安全清除以防隐私泄露。步骤如下: 1. **备份重要数据**:转移到外部存储或云端。 2. **验证备份完整性**:确保无遗漏。 3. **准备系统安装工具**:如需重装系统。 4. **恢复出厂设置**:删除所有内容和个人设置。 5. **使用数据擦除工具**:如DiskGenius,彻底覆盖数据。 6. **物理销毁硬盘**:针对极度敏感数据。 确保数据安全的同时,还能循环利用旧设备。
idea plugin 插件开发
idea plugin 插件开发
292 0
|
JavaScript 前端开发
成功解决Component template should contain exactly one root element
成功解决Component template should contain exactly one root element