您还未登录! 登录 | 注册 | 帮助  

您的位置: 首页 > 软件测试管理 > 配置管理 > 正文

基于zookeeper的配置管理中心

发表于:2017-01-09 作者:网络转载 来源:

  废话不多说,先睹为快: https://github.com/ruanjianlxm/panda-config
  基于同事的stc-config整理
  解决问题:在分布式系统中,一般一个服务部署在多个机子上,多实例的部署的确提高了服务的整体吞吐,减少了单节点的压力。但是有一个事情非常麻烦,那就是修改配置文件,一旦有了上线行为,或者配置文件需要修改,就会非常繁琐。比如:一个服务有一百个实例,难道你去100台服务器都去改下配置文件吗,那要改疯掉的,而且还有一点,这么改非常容易某台服务器漏掉修改,造成线上服务配置不一致,着就惨了,还很难排查。
  解决方案:建立一个配置管理中心,把配置文件交给zookeeper来管理,只需要在一个节点上修改配置文件,那么其他监听了该节点的服务全部自动更新最新的配置文件到本地。
  技术核心:zookeepr:一个节点代表property的一个key ,znode的data是property的value。
  给znode添加watch,有点节点的增删改,就是对property的增删改。
  java.nio.file.WatchService:java7中提供的监听本地文件夹目录变化的监听器类,一旦文件夹中某个文件发生变更,自动触发watch监听
  代码:https://github.com/ruanjianlxm/panda-config