摘要:云计算 这篇文章主要讲解了“zkconfigutil怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究
这篇文章主要讲解了“zkconfigutil怎么使用”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“zkconfigutil怎么使用”吧!
zkconfigutil介绍
它只是个工具,用于实现分布式集群间配置项的管理,虽小,但很、灰常好用,easy play
代码实例
/** * just test * @author JERRY * */@TypeZkConfigurable(path="/test/jerry", server="localhost:2181", useOwnZkServer=false)public final class Demo {@FieldZkConfigurable(resove=DemoF1Resolve.class, dynamicUpdate=true)public static String F1 = "F1";@FieldZkConfigurable(resove=DemoF2Resolve.class, dynamicUpdate=true)public static String F2 = "F2";@FieldZkConfigurable(resove=DemoF3Resolve.class, dynamicUpdate=true)public static Boolean F3 = false;}public final class DemoF1Resolve extends AbstractResolve{@Overridepublic String resolve() {// TODO Auto-generated method stubreturn Demo.F1;}@Overridepublic void dResolve(String src) {// TODO Auto-generated method stubDemo.F1 = src;}}该Demo模拟集群环境,假入Demo用于工程公共配置管理,一般其会有比较多的字段,当前zkconfigutil版本只考虑可配置的字段的值均可以通过string表示,这样我们就可以通过eclipse zookeeer插件方便的实现可视化修改
如您所见,Demo中主要有两类注解,一个用于class,一个用于字段
@TypeZkConfigurable(path="/test/jerry", server="localhost:2181", useOwnZkServer=false)该注解用于class主要有三个参数,path代表该配置在zookeeper上的根目录,一个配置项实际保存在zookeeper上的路径为/path/ClassSimpleName/FieldName,server代表使用的zookeeper地址,标准的zookeeper地址格式,useOwnZkServer表示是否使用自己指定的私有zookeeper,下面您会看到一个totalzookeeper,耐心往下看
@FieldZkConfigurable(resove=DemoF1Resolve.class, dynamicUpdate=true)该注解用于field主要有两个参数,resove主要实现该字段的赋值操作,dynamicUpdate设置该字段是否需要动态更新,true时,zookeeper会对该路径添加dataListener,当zookeeper上值发生变更时,通过reslove实现字段的更新操作
您可能看到了,主要工作在于reslove的开发,但其实其只有两个方法,easy play
ZkConfigUtil app = new ZkConfigUtil("localhost:2181");app.register(Demo.class, true);so easy,两行代码实现Demo的zookeeper化。
感谢各位的阅读,以上就是“zkconfigutil怎么使用”的内容了,经过本文的学习后,相信大家对zkconfigutil怎么使用这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!
相关文章推荐
虚拟主机的专业参数,分别都是什么意思?2022-09-09
中非域名注册规则是怎样的?注册域名有什么用处? 2022-01-10
HostEase新年活动促销 美国/香港主机全场低至五折2021-12-28
HostGator下载完整备份教程分享2021-12-28
Flink中有界数据与无界数据的示例分析2021-12-28