13、db大小:为什么etcd社区建议db大小不超过8G

你好,我是唐聪。 在[03]写流程中我和你分享了etcd Quota模块,那么etcd为什么需要对db增加Quota限制,以及不建议你的etcd集群db大小超过8G呢? 过大的db文件对集群性能和稳定性有哪些影响? 今天我要和你分享的主题就是关于db...

ETCD实战课

12、一致性:为什么基于Raft实现的etcd还会出现数据不一致

你好,我是唐聪。 今天我要和你分享的主题是关于etcd数据一致性的。 我们都知道etcd是基于Raft实现的高可用、强一致分布式存储。但是有一天我和小伙伴王超凡却遭遇了一系列诡异的现象:用户在更新Kubernetes集群中的Deployment资源镜...

ETCD实战课

11、压缩:如何回收旧版本数据

你好,我是唐聪。 今天是大年初一,你过年都有什么安排?今年过年对我来说,其实是比较特别的。除了家庭团聚走亲访友外,我多了一份陪伴。感谢你和我在这个专栏里一块精进,我衷心祝你在新的一年里平安喜乐,万事胜意。 这节课是我们基础篇里的最后一节,正巧这节课的...

ETCD实战课

10、boltdb:如何持久化存储你的key、value数据

你好,我是唐聪。 在前面的课程里,我和你多次提到过etcd数据存储在boltdb。那么boltdb是如何组织你的key-value数据的呢?当你读写一个key时,boltdb是如何工作的? 今天我将通过一个写请求在boltdb中执行的简要流程,分析其...

ETCD实战课

9、事务:如何安全地实现多key操作

你好,我是唐聪。 在软件开发过程中,我们经常会遇到需要批量执行多个key操作的业务场景,比如转账案例中,Alice给Bob转账100元,Alice账号减少100,Bob账号增加100,这涉及到多个key的原子更新。 无论发生任何故障,我们应用层期望的...

ETCD实战课

8、Watch:如何高效获取数据变化通知

你好,我是唐聪。 在Kubernetes中,各种各样的控制器实现了Deployment、StatefulSet、Job等功能强大的Workload。控制器的核心思想是监听、比较资源实际状态与期望状态是否一致,若不一致则进行协调工作,使其最终一致。 那...

ETCD实战课