基于zookeeper的分布式一致性配置中心

17 篇文章 1 订阅

    当同一个项目部署多个节点,或者多个项目部署在不同的jvm实例上,因为没办法共享内存。那共享项目的配置参数就成了一个问题,当然解决的办法很多,一起读数据库,一起读redis/memcahed,读本地缓存,修改的时候再一个个去触发。这些方案或多或少都会有效率或者时效性比较低的问题。

    可能是被人问多了几次,我觉得用zk来实现这种配置中心的方案也是很方便的,不怕效率问题的,就实时去读zk。兼顾效率和时效性的就有了下面这种实现。

    

    每个项目的本地缓存初始化会主动去读取zk集群中相关配置,同时会监听对应配置的改变,及时修改本地的内容。而我们的项目每次只需要读取其中的本地缓存中的配置即可。本项目内,缓存配置的读写采用了本地读写锁。而跨项目之间的配置的写和更新,则采用了zk实现的分布式读写锁。具体的实现,可以看https://github.com/linsongze/consistent_config

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值