溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

zkconfigutil怎么使用

發(fā)布時(shí)間:2021-12-23 14:30:33 來源:億速云 閱讀:119 作者:iii 欄目:云計(jì)算

這篇文章主要講解了“zkconfigutil怎么使用”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“zkconfigutil怎么使用”吧!

zkconfigutil介紹

    它只是個(gè)工具,用于實(shí)現(xiàn)分布式集群間配置項(xiàng)的管理,雖小,但很、灰常好用,easy play

代碼實(shí)例

/**
 * 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{

		@Override
		public String resolve() {
			// TODO Auto-generated method stub
			return Demo.F1;
		}

		@Override
		public void dResolve(String src) {
			// TODO Auto-generated method stub
			Demo.F1 = src;
		}
		
	}

    

詳解

該Demo模擬集群環(huán)境,假入Demo用于工程公共配置管理,一般其會(huì)有比較多的字段,當(dāng)前zkconfigutil版本只考慮可配置的字段的值均可以通過string表示,這樣我們就可以通過eclipse zookeeer插件方便的實(shí)現(xiàn)可視化修改

如您所見,Demo中主要有兩類注解,一個(gè)用于class,一個(gè)用于字段

@TypeZkConfigurable(path="/test/jerry", server="localhost:2181", useOwnZkServer=false)

該注解用于class主要有三個(gè)參數(shù),path代表該配置在zookeeper上的根目錄,一個(gè)配置項(xiàng)實(shí)際保存在zookeeper上的路徑為/path/ClassSimpleName/FieldName,server代表使用的zookeeper地址,標(biāo)準(zhǔn)的zookeeper地址格式,useOwnZkServer表示是否使用自己指定的私有zookeeper,下面您會(huì)看到一個(gè)totalzookeeper,耐心往下看

@FieldZkConfigurable(resove=DemoF1Resolve.class, dynamicUpdate=true)

該注解用于field主要有兩個(gè)參數(shù),resove主要實(shí)現(xiàn)該字段的賦值操作,dynamicUpdate設(shè)置該字段是否需要?jiǎng)討B(tài)更新,true時(shí),zookeeper會(huì)對(duì)該路徑添加dataListener,當(dāng)zookeeper上值發(fā)生變更時(shí),通過reslove實(shí)現(xiàn)字段的更新操作

您可能看到了,主要工作在于reslove的開發(fā),但其實(shí)其只有兩個(gè)方法,easy play

ZkConfigUtil app = new ZkConfigUtil("localhost:2181");
app.register(Demo.class, true);

so easy,兩行代碼實(shí)現(xiàn)Demo的zookeeper化。

感謝各位的閱讀,以上就是“zkconfigutil怎么使用”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)zkconfigutil怎么使用這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是億速云,小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI