1. 程式人生 > >向zookeeper 註冊服務

向zookeeper 註冊服務

/**
 * 向zookeeper 註冊服務
 * @param serviceName  服務名稱
 * @param zkServiceIp  zookeeper服務地址
 * @param rootPath  根節點路徑
 * @throws UnknownHostException
 */
public void init(String serviceName,String zkServiceIp,String rootPath) throws UnknownHostException {
    ZkClient zkClient=new ZkClient(zkServiceIp);
    boolean rootExists=zkClient.exists(rootPath);
    if(!rootExists){
        zkClient.createPersistent(rootPath);
    }
    boolean serviceExist=zkClient.exists(rootPath+"/"+serviceName);
    if(!serviceExist){
        //建立服務節點
        zkClient.createPersistent(rootPath+"/"+serviceName);
    }
    InetAddress inetAddress=InetAddress.getLocalHost();
    String ip=inetAddress.getHostAddress().toString();//獲得本機Ip
    zkClient.createEphemeral(rootPath+"/"+serviceName+"/"+ip);
}