news 2026/9/2 12:43:36

【分布式系统】07 事务(上):2PC 与 3PC —— 追求“完美原子性”的理想与代价

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【分布式系统】07 事务(上):2PC 与 3PC —— 追求“完美原子性”的理想与代价

大家好,我是Tony Bai。

欢迎来到《分布式系统:原理、哲学与实战》微专栏的第七讲。

在上一讲中,我们征服了“分区”这片广阔的疆域。通过将数据“分而治之”,我们获得了构建海量系统的能力。但我们也留下了一个最棘手的“悬念”:

如果一次业务操作,需要原子性地修改位于不同分区的数据,我们该怎么办?

想象一个经典的银行转账场景:用户 Gopher 要从他在分区 A 的储蓄账户,转账 100 元到他在分区 B 的信用卡账户。这个操作包含两个步骤:

  1. 储蓄账户(分区 A)扣款 100 元。

  2. 信用卡账户(分区 B)入账 100 元。

我们对这个操作有一个神圣的、不可违背的要求:原子性 (Atomicity)。这两个步骤必须要么全部成功,要么全部失败。我们绝不能接受扣款成功但入账失败(钱没了),或者扣款失败但入账成功(天降横财)的情况。

在单机数据库中,BEGIN TRANSACTION...COMMIT语句优雅地为我们解决了这个问题。但现在,数据被分割在两个独立的、通过不可靠网络连接的物理节点上。我们如何在一个被“分裂”的世界里,重塑“原子性”的辉煌?

今天,我们将深入探讨对这个问题最早、也是最经典的回答——**两阶段提交协议 (Two-Phase Commit, 2PC)**。我们将看到,它是一个试图在分布式世界中,完美复刻单机事务的“理想主义”英雄。

然而,当这个“英雄”暴露出其致命的脆弱性时,一场旨在拯救它的“改良运动”也随之展开,催生了更复杂的**三阶段提交协议 (Three-Phase Commit, 3PC)**。

本章,我们将共同见证这场围绕“完美原子性”展开的、长达数十年的执着追求与艰难挣扎。我们将剖析 2PC 的伟大构想与悲壮缺陷,并审视 3PC 的改良尝试为何最终也未能成为完美的答案。

我们先从两阶段提交协议( 2PC )开始。

2PC 协议详解:一场由“协调者”主导的投票

两阶段提交引入了两个核心角色:

  • 协调者 (Coordinator):事务的发起者和最终决策者。在我们的例子中,可以是一个专门的事务管理服务,或是发起转账请求的应用服务器。

  • 参与者 (Participants):所有涉及该事务的数据节点。在我们的例子中,就是分区 A 和分区 B。

顾名思义,整个协议分为两个阶段:准备阶段 (Prepare Phase)和 提交阶段 (Commit Phase)。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 23:28:42

开源图像风格迁移新选择:AI印象派艺术工坊一文详解

开源图像风格迁移新选择:AI印象派艺术工坊一文详解 1. 引言 1.1 技术背景与行业痛点 在数字内容创作日益普及的今天,图像风格化处理已成为社交媒体、视觉设计和个性化表达的重要手段。传统基于深度学习的风格迁移方案(如StyleGAN、Neural …

作者头像 李华
网站建设 2026/9/3 4:50:48

智能的未来在于发展出新的情理结构与逻辑体系

智能的未来并非简单延续既有逻辑框架的优化,而在于突破二元对立的认知局限,发展出一种融合情境感知与价值判断的"情理结构"——它既能容纳计算理性的精确性,又能承载人类经验的模糊性与伦理性;同时,新的逻辑…

作者头像 李华
网站建设 2026/9/3 7:29:24

《美国国家科学院院刊》:宇航员返回地球后大脑发生永久性改变

人工智能学家2026-1-1702:37 深度好文当宇航员从太空返回地球时,他们常常会踉跄着走出返回舱,像刚学走路的孩子一样需要别人搀扶。这种失衡感并非短暂的不适,而是大脑在微重力环境下经历深刻重塑的表现。最新发表在《美国国家科学院院刊》上的…

作者头像 李华
网站建设 2026/9/3 1:23:49

GPEN批量处理中断恢复?断点续传机制实现方案

GPEN批量处理中断恢复?断点续传机制实现方案 1. 背景与问题分析 在使用GPEN进行图像肖像增强和照片修复的过程中,批量处理功能是提升效率的核心工具。然而,在实际应用中,用户常遇到以下问题: 批量任务执行过程中因系…

作者头像 李华
网站建设 2026/9/3 1:15:23

YOLOv8多目标检测实战:城市交通流量统计系统搭建步骤

YOLOv8多目标检测实战:城市交通流量统计系统搭建步骤 1. 引言 1.1 业务场景描述 随着智慧城市建设的不断推进,城市交通管理对实时、精准的数据采集提出了更高要求。传统的交通流量统计方式依赖人工计数或红外传感器,存在成本高、覆盖范围小…

作者头像 李华
网站建设 2026/9/2 23:28:20

如何实现33语种精准互译?HY-MT1.5-7B大模型镜像快速上手指南

如何实现33语种精准互译?HY-MT1.5-7B大模型镜像快速上手指南 1. 引言:多语言互译的工程挑战与HY-MT1.5-7B的定位 在全球化协作日益频繁的背景下,高质量、低延迟的多语言互译已成为企业出海、跨国会议、内容本地化等场景的核心需求。然而&am…

作者头像 李华