Elastic-Job 分布式定时任务深度剖析 —— 从概念到原理
定时任务是后端开发中最常见的需求之一。单机时代,一个 cron 表达式加上 @Scheduled 就能解决问题。但当服务集群部署后,问题立刻复杂起来:谁执行?执行几次?执行节点宕机了怎么办? Elastic-Job 是当当网开源(现为 Apache ShardingSphere 生态)的分布式任务调度框架,Lite 模式以去中心化 +...
Dubbo 与 SOFA RPC 的 ZooKeeper 断连容灾机制深度对比
ZooKeeper 挂了怎么办?这是每个用 ZK 做注册中心的团队必须回答的问题。Dubbo 和 SOFA RPC 作为国内最主流的两大 RPC 框架,都用 ZK 做服务发现,但它们的容灾策略有本质差异。...
ZooKeeper 3.4.10 集群深度剖析(下)—— Leader 选举、数据同步、Java 客户端与运维实践
上篇讲透了 ZAB 协议,中篇深入了数据模型、Session 和 Watcher。下篇聚焦四个团队高频话题:Leader 选举到底怎么选、数据同步的三种策略、Java 客户端底层 NIO 通信的每一步、以及生产环境的运维最佳实践。 七、Leader 选举 ——...
ZooKeeper 3.4.10 集群深度剖析(中)—— 数据模型、Session 与 Watcher
上篇我们建立了 ZK 集群的全局视角,深入理解了 ZAB 协议这个”灵魂”。中篇聚焦 ZK 对开发者最直接的三块:数据模型(你存的是什么)、Session 机制(客户端与服务端的纽带)和 Watcher 机制(变更通知的核心)。 四、数据模型与 API...
ZooKeeper 3.4.10 集群深度剖析(上)—— ZAB 协议与核心架构
ZooKeeper 作为分布式系统的”协调中枢”,在企业内部几乎无处不在——配置中心、服务发现、分布式锁、Leader 选举、消息队列……这些场景背后都离不开 ZK。但很多中间件团队成员对 ZK 的理解停留在”会调 API”层面,对内部的 ZAB 协议、Session 机制、Leader 选举等核心原理缺乏系统认知。 本文以...