中间件
文章平均质量分 92
胡桃姓胡,蝴蝶也姓胡
非常熟悉service mesh,有共同兴趣的小伙伴可以私信我
展开
-
etcd的Watch原理
在 Kubernetes 中,各种各样的控制器实现了 Deployment、StatefulSet、Job 等功能强大的 Workload。控制器的核心思想是监听、比较资源实际状态与期望状态是否一致,若不一致则进行协调工作,使其最终一致。那么当你修改一个 Deployment 的镜像时,Deployment 控制器是如何高效的感知到期望状态发生了变化呢?要回答这个问题,我们需要从etcd的Watch特性说起,他是Kubernetes控制器的工作基础。原创 2023-05-01 22:06:43 · 2607 阅读 · 3 评论 -
etcd原理剖析一
你可以理解一旦一个值更新成功,随后任何通过线性读的 client 都能及时访问到。虽然集群中有多个节点,但 client 通过线性读就如访问一个节点一样。etcd 默认读模式是线性读,因为它需要经过 Raft 协议模块,反应的是集群共识,因此在延时和吞吐量上相比串行读略差一点,适用于对数据一致性要求高的场景。如果你的 etcd 读请求显示指定了是串行读,就不会经过架构图流程中的流程三、四。默认是线性读,因此接下来我们看看读请求进入线性读模块,它是如何工作的。原创 2023-05-01 20:14:52 · 2483 阅读 · 0 评论 -
配置中心基本原理
传统的静态配置方式想要修改某个配置时,必须重新启动一次应用,如果是数据库连接串的变更,那可能还容易接受一些,但如果变更的是一些运行时实时感知的配置,如某个功能项的开关,重启应用就显得有点大动干戈了。配置中心正是为了解决此类问题应运而生的,特别是在微服务架构体系中,更倾向于使用配置中心来统一管理配置。配置中心最核心的能力就是配置的动态推送,常见的配置中心如 Nacos、Apollo 等都实现了这样的能力。目前比较流行的配置中心恰恰没有使用长连接,而是使用长轮询。原创 2023-04-26 02:13:34 · 845 阅读 · 0 评论