# leader

Published articles for leader.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## 【etcd】Watch 机制：watchableStore、synced/unsynced 与 ErrCompacted

DevFeed: [【etcd】Watch 机制：watchableStore、synced/unsynced 与 ErrCompacted](<https://devfeed.tech/articles/etcd-watch-watchablestore-synced-unsynced-errcompacted-33991.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/09-watch/09-watch.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Remote Procedure Call (RPC)](<https://devfeed.tech/topics/rpc.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [apply](<https://devfeed.tech/tags/apply.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [io](<https://devfeed.tech/tags/io.md>), [k8s](<https://devfeed.tech/tags/k8s.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lag](<https://devfeed.tech/tags/lag.md>), [leader](<https://devfeed.tech/tags/leader.md>), [lease](<https://devfeed.tech/tags/lease.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [notify](<https://devfeed.tech/tags/notify.md>), [raft](<https://devfeed.tech/tags/raft.md>), [range](<https://devfeed.tech/tags/range.md>), [restore](<https://devfeed.tech/tags/restore.md>), [revision](<https://devfeed.tech/tags/revision.md>), [rpc](<https://devfeed.tech/tags/rpc.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>), [watchablestore](<https://devfeed.tech/tags/watchablestore.md>)

### AI overview

This article examines the etcd v3.5.33 watchableStore implementation, including synced and unsynced watcher groups, victims caused by backpressure, Apply-time notification, historical synchronization, and the ErrCompacted client resynchronization boundary. It also discusses event ordering, follower watch progress, and interactions with Kubernetes apiserver watch caches.

### Source excerpt

钉 etcd v3.5.33 watchableStore 的 synced/unsynced/victims 三分法、Apply 后 notify 与历史追赶 syncWatchersLoop，以及 CompactRevision 触发 ErrCompacted 时的客户端重同步边界。

## 【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由

DevFeed: [【etcd】单 Raft 组与服务器角色：Leader、Follower、Learner 与 request 路由](<https://devfeed.tech/articles/etcd-raft-leader-follower-learner-request-33984.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/02-single-raft/02-single-raft.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: article

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [gRPC](<https://devfeed.tech/topics/grpc.md>)

Tags: [apiserver](<https://devfeed.tech/tags/apiserver.md>), [apply](<https://devfeed.tech/tags/apply.md>), [atomic](<https://devfeed.tech/tags/atomic.md>), [commit](<https://devfeed.tech/tags/commit.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [etcdserver](<https://devfeed.tech/tags/etcdserver.md>), [follower](<https://devfeed.tech/tags/follower.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [leader](<https://devfeed.tech/tags/leader.md>), [learner](<https://devfeed.tech/tags/learner.md>), [linearizable](<https://devfeed.tech/tags/linearizable.md>), [raft](<https://devfeed.tech/tags/raft.md>), [request](<https://devfeed.tech/tags/request.md>), [single-raft-group](<https://devfeed.tech/tags/single-raft-group.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [wal](<https://devfeed.tech/tags/wal.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This article explains how etcd v3.5.33 embeds a single Raft group, separates EtcdServer responsibilities from the Raft library, and routes requests across Leader, Follower, and Learner roles. It covers gRPC write forwarding, linearizable and serializable reads, and the handling of watch, lease, and mutating requests.

### Source excerpt

钉清 etcd v3.5.33 单 Raft 组拓扑、EtcdServer 与 go.etcd.io/raft/v3 边界、Leader/Follower/Learner 角色及 gRPC 写读路由；与 distributed/13 分工。

## 【etcd】Compaction、Defrag 与容量：quota、alarm 与 SLO

DevFeed: [【etcd】Compaction、Defrag 与容量：quota、alarm 与 SLO](<https://devfeed.tech/articles/etcd-compaction-defrag-quota-alarm-slo-33994.md>)

Original publisher: [Read original article](<https://quant67.com/post/etcd/12-compaction-quota/12-compaction-quota.html>)

Author: Liao Tonglang

Published: 2026-08-26T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [etcd](<https://devfeed.tech/topics/etcd.md>), [Raft](<https://devfeed.tech/topics/raft.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>)

Tags: [alarm](<https://devfeed.tech/tags/alarm.md>), [bbolt](<https://devfeed.tech/tags/bbolt.md>), [benchmark](<https://devfeed.tech/tags/benchmark.md>), [compaction](<https://devfeed.tech/tags/compaction.md>), [defrag](<https://devfeed.tech/tags/defrag.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [errcompacted](<https://devfeed.tech/tags/errcompacted.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [follower](<https://devfeed.tech/tags/follower.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [lag](<https://devfeed.tech/tags/lag.md>), [leader](<https://devfeed.tech/tags/leader.md>), [mvcc](<https://devfeed.tech/tags/mvcc.md>), [nospace](<https://devfeed.tech/tags/nospace.md>), [performance](<https://devfeed.tech/tags/performance.md>), [quota](<https://devfeed.tech/tags/quota.md>), [raft](<https://devfeed.tech/tags/raft.md>), [resourceversion](<https://devfeed.tech/tags/resourceversion.md>), [v3](<https://devfeed.tech/tags/v3.md>), [v3-5](<https://devfeed.tech/tags/v3-5.md>), [v3-5-33](<https://devfeed.tech/tags/v3-5-33.md>), [watch](<https://devfeed.tech/tags/watch.md>)

### AI overview

This technical article explains how etcd v3.5.33 compaction, defragmentation, quota handling, and the NOSPACE alarm interact. It distinguishes revision-history removal from bbolt file reclamation, describes periodic and revision-based auto-compaction, and connects retention, quota, defrag pauses, and Watch or Kubernetes control-plane behavior to operational SLOs.

### Source excerpt

钉 etcd v3.5.33 MVCC compaction 与 bbolt defrag 的分工、auto-compaction 保留窗口、quota-backend-bytes 与 NOSPACE alarm 写入门，以及 ErrCompacted 如何写进 Watch SLO。

## The Importance of an Engineering Vision (High-Purpose Environments, Part 2)

DevFeed: [The Importance of an Engineering Vision (High-Purpose Environments, Part 2)](<https://devfeed.tech/articles/the-importance-of-an-engineering-vision-high-purpose-environments-part-2-39944.md>)

Original publisher: [Read original article](<https://mende.io/blog/the-importance-of-an-engineering-vision-high-purpose-environments-part-2/>)

Author: tobi@techunicorn.builders (Tobias Mende)

Published: 2023-05-13T05:00:00Z

Content type: opinion

Language: en

Sources: [Tobias Mende](<https://devfeed.tech/sources/tobias-mende.md>)

Topics: [Statement](<https://devfeed.tech/topics/statement.md>)

Tags: [culture-high-purpose-environments-engineering-excellence-organizational-design](<https://devfeed.tech/tags/culture-high-purpose-environments-engineering-excellence-organizational-design.md>), [engineering](<https://devfeed.tech/tags/engineering.md>), [leader](<https://devfeed.tech/tags/leader.md>), [mission](<https://devfeed.tech/tags/mission.md>), [organizations](<https://devfeed.tech/tags/organizations.md>), [strategy](<https://devfeed.tech/tags/strategy.md>), [teams](<https://devfeed.tech/tags/teams.md>), [values](<https://devfeed.tech/tags/values.md>), [vision](<https://devfeed.tech/tags/vision.md>), [work](<https://devfeed.tech/tags/work.md>)

### AI overview

This article explains how a clear engineering vision, mission, strategy, guiding principles, and values can help teams make progress and support leadership without relying on hierarchy or power. It defines the distinctions among vision, mission, and strategy and presents examples.

### Source excerpt

The Importance of an Engineering Vision (High-Purpose Environments, Part 2) Have you ever seen organizations and teams spinning in circles, having endless discussions, and never seeming able to make progress? Have you witnessed environments where every decision was made by a leader in the hierarchical sense? Or even worse, by someone able to exert a specific power and overrule others?

## Leader Election inside Kubernetes

DevFeed: [Leader Election inside Kubernetes](<https://devfeed.tech/articles/leader-election-inside-kubernetes-37796.md>)

Original publisher: [Read original article](<https://carlosbecker.com/posts/k8s-leader-election/>)

Author: Carlos Alexandro Becker

Published: 2020-03-14T00:00:00Z

Content type: tutorial

Language: en

Sources: [Carlos Becker](<https://devfeed.tech/sources/carlos-becker.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Go](<https://devfeed.tech/topics/go.md>), [API](<https://devfeed.tech/topics/api.md>), [Deployment](<https://devfeed.tech/topics/deployment.md>)

Tags: [cluster](<https://devfeed.tech/tags/cluster.md>), [docker](<https://devfeed.tech/tags/docker.md>), [github](<https://devfeed.tech/tags/github.md>), [go](<https://devfeed.tech/tags/go.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [leader](<https://devfeed.tech/tags/leader.md>), [leader-election](<https://devfeed.tech/tags/leader-election.md>), [rbac](<https://devfeed.tech/tags/rbac.md>)

### AI overview

A tutorial on implementing leader election for applications running on Kubernetes. It uses Kubernetes' leader election package from the Go SDK, explains pod-based identity and lease management, and covers the RBAC permissions required for the deployment.

### Source excerpt

Ever needed a simple leader election mechanism on something that will run on a Kubernetes cluster? There's an easy way to do that!

## Kafka 的设计与实践思考

DevFeed: [Kafka 的设计与实践思考](<https://devfeed.tech/articles/kafka-40994.md>)

Original publisher: [Read original article](<https://blog.joway.io/posts/kafka-design-practice/>)

Author: Joway

Published: 2018-04-16T00:00:00Z

Content type: tutorial

Language: zh

Sources: [Random Thoughts](<https://devfeed.tech/sources/random-thoughts.md>)

Topics: [Kafka](<https://devfeed.tech/topics/kafka.md>), [Replication](<https://devfeed.tech/topics/replication.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [broker](<https://devfeed.tech/tags/broker.md>), [data](<https://devfeed.tech/tags/data.md>), [file](<https://devfeed.tech/tags/file.md>), [index](<https://devfeed.tech/tags/index.md>), [kafka](<https://devfeed.tech/tags/kafka.md>), [leader](<https://devfeed.tech/tags/leader.md>), [partition](<https://devfeed.tech/tags/partition.md>), [replication](<https://devfeed.tech/tags/replication.md>), [sync](<https://devfeed.tech/tags/sync.md>), [tech](<https://devfeed.tech/tags/tech.md>), [zookeeper](<https://devfeed.tech/tags/zookeeper.md>)

### AI overview

A Chinese-language technical article presents a personal summary of Kafka's architecture, internal components, storage design, and APIs. It explains the roles of ZooKeeper, brokers, partitions, replication, leaders, ISR, offsets, segments, sparse indexes, and message access.

### Source excerpt

前几天看了 librdkafka 的官方文档，这篇文档不仅仅讲解了如何使用 Kafka ，某种程度也讲解了分布式系统实现的难点和使用细节，故而让我对 Kafka 的实现原理产生了浓厚的兴趣。 这篇文章从 Kafka 的设计到使用做了一些个人总结，围绕真正实践场景，探寻其设计上的智慧与妥协。 设计 架构设计 Zookeeper Zookeeper 存储了 Kafka 集群状态信息 。 Zookeeper 还负责从 Broker 中选举出一个机器作为 Controller, 并确保其唯一性。 同时, 当 Controller 宕机时, 再选举一个新的 。