2022 flag 150篇文章 - 91 分布式系统协调服务 - 分布式基础
无论是单体应用还是分布式应用,数据一致性依旧是永恒的主题;单体应用的时代,数据一致性是通过数据库来保证的。最经典的是ACID协议;A-原子性;C-一致性;I-隔离性;D-持久性;
分布式应用的概念:部署在不同网络上的计算机,通过消息进行通讯与协调的系统;分布式系统的特征:分布性、对等性(允许冗余)、并发性、缺乏全局时钟、故障总是会发生;分布式系统3态:正确、超时、错误
分布式系统的基础理论:CAP(C-一致性;A-可用性;P-分区容错),BASE(BA-基本可用;S-软状态;E-最终一致性)
在分布式应用的时代,数据一致性是通过2PC, 3PC协议来实现
(2PC)
(3PC)
SAGA模式:分布式异步事务;SAGA由一系列子事务组成;每一个子事务都有补偿动作;
SAGA是一系列本地的交易,每笔事务都会更新单个服务中的数据;第一个事务由系统的外部请求启动,然后每一个后续的步骤由前一个事件完成而触发;SAGA的模式有2种, 第一种是事件/编排,第二种是命令/协调;
事件/编排
命令/协调
paxos 算法
主proposer生成提案号;
-生成提案号
-其中之一acceptor
(未批准)
承诺不在批准提案号小于M0的提案;
(已批准)
反馈编号最大的提案
Acceptor批准提案;
- prepare请求
- accept请求
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!