2025年9月24日

一把锁的两种承诺:synchronized如何同时保证互斥与内存可见性?

摘要: 在多线程环境中,‌临界区(Critical Section)是指一次只能由一个线程执行的代码段,这些代码通常涉及对共享资源(如变量、数据结构、文件或数据库连接)的访问或修改。临界区的存在是为了解决并发控制中的两大核心问题。 ‌ 1)数据不一致性‌:如果多个线程同时对共享资源进行写操作,可能会破坏数据 阅读全文

posted @ 2025-09-24 10:14 poemyang 阅读(349) 评论(0) 推荐(0)

2025年9月23日

从混沌到秩序:Java共享内存模型如何通过显式约束驯服并发?

摘要: 并发编程的本质,是在看似混沌的并行执行中建立秩序,确保程序的确定性。为达此目的,并发原语应运而生,它们是构筑一切并发系统的基石。其核心使命在于,通过定义一套明确的交互范式,消除因资源共享而引发的竞态条件(Race Condition),从而驯服并发世界的不确定性。 从Java的显式锁(synchro 阅读全文

posted @ 2025-09-23 10:14 poemyang 阅读(47) 评论(0) 推荐(0)

2025年9月20日

绯闻女孩不只会八卦:从“验明正身”到“抓内鬼”,Gossip的进阶玩法

摘要: 默克尔树 默克尔树(Merkle Tree)是由计算机科学家Ralph Merkle多年前提出,并以他本人的名字来命名,也叫哈希树。默克尔树是一种树形数据结构,通常是二叉树,其中每个叶子节点是数据块的哈希值,而每个非叶子节点是其所有子节点哈希值的哈希。树根的哈希值(Merkle Root)代表了整个 阅读全文

posted @ 2025-09-20 02:08 poemyang 阅读(72) 评论(0) 推荐(0)

2025年9月19日

技术圈的“绯闻女孩”:Gossip是如何把八卦秘密传遍全网的?

摘要: Gossip协议,中文可译为“流言蜚语”“闲话”或“八卦”,形象地描述了该协议的工作方式——类似于人类社会中的信息传播模式。Gossip协议最早由Xerox公司的Palo Alto研究中心(PARC)在一篇论文中提出,论文中将其称为八卦算法或病毒算法(Epidemic Algorithm),但最终“ 阅读全文

posted @ 2025-09-19 09:59 poemyang 阅读(313) 评论(0) 推荐(0)

2025年9月18日

系统里数据又“打架”了?让“少数服从多数”来终结这场混乱!

摘要: Quorum(法定人数/多数派)机制由David K. Gifford于1979年提出,是分布式系统中用于在副本间实现不同级别数据一致性与可用性的核心方法。其设计思想借鉴了数学中的鸽巢原理(Pigeonhole Principle):若将 N+1个物体放入 N 个鸽巢,则至少有一个鸽巢包含两个或更多 阅读全文

posted @ 2025-09-18 07:20 poemyang 阅读(77) 评论(0) 推荐(0)

2025年9月15日

“鸡蛋不能放一个篮子里”,如何确保千亿数据万无一失?

摘要: 副本机制(Replication),是指分布式系统在多个节点间保存有相同数据的冗余,即副本(Replica/copy)。当出现某一个节点的数据丢失时,可以从副本上读取到数据。数据副本是分布式系统中解决数据丢失问题的唯一手段。 合适的做法并非以机器作为副本单位,而是将数据划分为合理的数据段,以数据段为 阅读全文

posted @ 2025-09-15 08:22 poemyang 阅读(422) 评论(0) 推荐(0)

2025年9月12日

“凭什么说你比我先?”——没有上帝时钟,如何判断“谁先谁后”?

摘要: 物理时钟在分布式系统中难以完美同步,导致无法仅凭物理时间戳来精确判断事件的因果顺序。逻辑时钟为此而生。 兰伯特逻辑时钟 兰伯特逻辑时钟(Lamport Logical Clock)为系统中的每个事件分配一个单调递增的数字(时间戳),用于捕捉事件间的偏序关系(Happened-Before Relat 阅读全文

posted @ 2025-09-12 11:57 poemyang 阅读(585) 评论(0) 推荐(2)

2025年9月9日

“你还活着吗?” “我没死,只是网卡了!”——来自分布式世界的“生死契约”

摘要: 租约(Lease) 机制是分布式系统中一种至关重要的协调工具,广泛应用于节点状态判定、领导者选举、分布式锁、资源管理等场景。其核心思想是通过一个带有时间限制的授权(Time-bounded Promise) 来确保在不确定环境下的行为一致性和系统可靠性。 Lease机制的运行逻辑主要包括以下要点。 阅读全文

posted @ 2025-09-09 18:30 poemyang 阅读(449) 评论(0) 推荐(1)

2025年9月8日

海量数据如何“安家”?一文读懂哈希、范围和一致性哈希三大分片策略

摘要: 将单机问题转化为分布式解决方案时,首要任务是对问题进行分解,使得集群中的每台机器负责处理原问题的一个子集。无论是计算任务还是存储任务,其操作对象都是数据。因此,如何将海量数据有效地分解并分配到集群的不同节点上,即数据分布(也常称为数据分片,Data Partitioning/Sharding),是构 阅读全文

posted @ 2025-09-08 12:56 poemyang 阅读(348) 评论(0) 推荐(0)

2025年9月5日

“卧槽,系统又崩了!”——别慌,这也许是你看过最通俗易懂的分布式入门

摘要: 在分布式系统中,有效应对节点故障、网络分区延迟和数据一致性等挑战至关重要。本文将剖析保障分布式系统可靠性的核心机制:数据分片实现水平扩展,冗余副本保障数据高可用,租约(Lease)机制优化节点状态共识与资源管理,多数派(Quorum)原则确保操作的一致性,Gossip等去中心化协议高效同步集群状态。 阅读全文

posted @ 2025-09-05 09:33 poemyang 阅读(522) 评论(0) 推荐(0)

导航