diamond 安裝java
1:建立diamond使用的表
CREATE TABLE `config_info` (
`id` bigint(64) unsigned NOT NULL auto_increment,
`data_id` varchar(255) NOT NULL default '',
`group_id` varchar(128) NOT NULL default '',
`content` longtext NOT NULL,
`md5` varchar(32) NOT NULL default '',
`gmt_create` datetime NOT NULL default '2010-05-05 00:00:00',
`gmt_modified` datetime NOT NULL default '2010-05-05 00:00:00',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_config_datagroup` (`data_id`,`group_id`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8;數據庫
2.修改diamond-server jdbc.properties 數據庫地址,部署 diamond-server瀏覽器
3.發佈數據網絡
diamond發佈數據經過手工的方式進行。server
在瀏覽器中輸入http://ip:8080/diamond-server/,ip爲server搭建的第(2)步中的地址,以abc爲用戶名,123爲密碼,登陸後進入後臺管理界面,而後點擊「配置信息管理」—— 「添加配置信息」,在輸入框中輸入dataId、group、內容,最後點擊「提交」便可。ip
成功後,能夠在「配置信息管理」中查詢到發佈的數據。md5
4.訂閱數據rem
diamond客戶端API主要提供了訂閱數據的功能.部署
(1)客戶端獲取服務端地址get
獲取服務端地址對客戶端是透明的,客戶端僅僅須要在本地進行以下域名綁定便可:
ip a.b.c
ip爲前面搭建的http-server的ip
(2)建立訂閱者
DiamondManager manager = new DefaultDiamondManager(group, dataId, new ManagerListener() {
public Executor getExecutor() {
return null;
}
public void receiveConfigInfo(String configInfo) {
// 客戶端處理數據的邏輯
}
});
參數的說明:
group和dataId爲String類型,兩者結合爲diamond-server端保存數據的唯一key
ManagerListener 是客戶端註冊的數據監聽器, 它的做用是在運行中接受變化的配置數據,而後回調receiveConfigInfo()方法,執行客戶端處理數據的邏輯。若是要在運行中對變化的配置數據進行處理,就必定要註冊ManagerListener
(3)獲取配置數據
String configInfo = manager.getAvailableConfigureInfomation(timeout);
diamond-server端保存的配置全都爲文本類型,返回給客戶端的配置數據爲java.lang.String類型,timeout爲從網絡獲取配置數據的超時時間。客戶端調用每次調用該方法,都可以保證獲取一份最新的可用的配置數據。