1. 程式人生 > >JAVA遠端操作Zookeeper示例

JAVA遠端操作Zookeeper示例

zookeeper可以單獨安裝,如果在hbase安裝完成後,hbase-env.sh中沒有設定export HBASE_MANAGES_ZK=true,會隨hbase啟動zookeeper。

import org.apache.zookeeper.CreateMode;  
import org.apache.zookeeper.WatchedEvent;  
import org.apache.zookeeper.Watcher;  
import org.apache.zookeeper.ZooDefs.Ids;  
import org.apache.zookeeper.ZooKeeper;  
public class ZookeeperTest {  
    private ZooKeeper zk = null;  
      
    public ZookeeperTest(){  
        try {  
            zk = new ZooKeeper("192.168.2.6:2181", 500000,new Watcher() {  
                   // 監控所有被觸發的事件  
                     public void process(WatchedEvent event) {  
                         System.out.println(event.getPath());  
                         System.out.println(event.getType().name());  
                         //System.out.println(event.getState().getIntValue());  
                   }  
              });  
            zk.exists("/root/childone", true);//觀察這個節點發生的事件  
              
        } catch (Exception e) {  
            // TODO Auto-generated catch block  
            e.printStackTrace();  
        }  
    }  
      
    public  void createNodes() {  
        try {  
          
            //建立一個節點root,資料是mydata,不進行ACL許可權控制,節點為永久性的(即客戶端shutdown了也不會消失)  
            zk.create("/root", "mydata".getBytes(),Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);  
  
            //在root下面建立一個childone znode,資料為childone,不進行ACL許可權控制,節點為永久性的  
            zk.create("/root/childone","childone".getBytes(), Ids.OPEN_ACL_UNSAFE,CreateMode.PERSISTENT);  
              
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
      
      
      
    public  void updateNodes() {  
        try {  
              
            //取得/root/childone節點下的資料,返回byte[]  
            System.out.println(new String(zk.getData("/root/childone", true, null)));  
              
            //修改節點/root/childone下的資料,第三個引數為版本,如果是-1,那會無視被修改的資料版本,直接改掉  
            zk.setData("/root/childone","childonemodify2".getBytes(), -1);  
              
            System.out.println(new String(zk.getData("/root/childone", true, null)));  
              
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
    public  void deleteNodes() {  
        try {  
          
            //第二個引數為版本,-1的話直接刪除,無視版本  
            zk.delete("/root/childone", -1);  
            zk.delete("/root", -1);  
              
              
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
      
    public static void main(String[] args) {  
        try {  
            ZookeeperTest zkTest = new ZookeeperTest();  
            //zkTest.createNodes();  
            zkTest.updateNodes();  
            //zkTest.deleteNodes();  
              
            while(true){  
                Thread.sleep(1000);  
            }  
              
        } catch (Exception e) {  
            e.printStackTrace();  
        }  
    }  
}  


相關推薦

JAVA遠端操作Zookeeper示例

zookeeper可以單獨安裝,如果在hbase安裝完成後,hbase-env.sh中沒有設定export HBASE_MANAGES_ZK=true,會隨hbase啟動zookeeper。 import org.apache.zookeeper.CreateMode;

使用ZooKeeper提供的Java API操作ZooKeeper

zookeeper 服務協調框架 分布式 集群 Java API 建立客戶端與zk服務端的連接 我們先來創建一個普通的maven工程,然後在pom.xml文件中配置zookeeper依賴: <dependencies> <dependency>

使用Java API操作zookeeper的acl權限

zookeeper Java API 分布式 服務協調框架 ACL權限 默認匿名權限 ZooKeeper提供了如下幾種驗證模式(scheme): digest:Client端由用戶名和密碼驗證,譬如user:password,digest的密碼生成方式是Sha1摘要的base64形式 a

java遠端操作ftp伺服器上傳下載

 注意裡面的檔案編碼,連線過程編碼與伺服器編碼不一致的話會導致上傳中文亂碼情況。 import java.io.File; import java.io.FileInputStream; import java.io.IOException; import java.io.Inpu

MongoDB叢集搭建與java程式碼操作MongoDB示例

MongoDB叢集搭建與java程式碼操作MongoDB示例 MongoDB叢集搭建過程 java使用MongoDB叢集Demo MongoDB叢集搭建過程 1. MongoDB Replica set叢集搭建準備(主從仲裁) 介

Java API 操作 zookeeper

1.需要的jar包: 1.1 zookeeper的核心包:zookeeper-3.4.5.jar 1.2 log4j的jar包:log4j-1.2.15.jar 1.3 netty的jar包:netty-3.2.2.Final.jar 1.4 slf4j的jar

18 大資料zookeeper --使用java api操作zookeeper

ZooKeeper服務命令: 在準備好相應的配置之後,可以直接通過zkServer.sh 這個指令碼進行服務的相關操作 1. 啟動ZK服務: sh bin/zkServer.sh start 2. 檢視ZK服務狀態: sh bin/zkServer.sh status 3. 停止

Java Jedis操作Redis示例(一)——pub/sub模式實現訊息佇列

轉載:http://blog.csdn.net/shaobingj126/article/details/50585035 轉載:http://blog.csdn.net/abcd898989/article/details/51697596 一 訊息佇列 1. 定義 訊息

Java Jedis操作Redis示例(五)——Redis的事務、管道和指令碼

一 Redis的事務 在資料庫系統中,一個事務是指:由一系列資料庫操作組成的一個完整的邏輯過程。例如銀行轉帳,從原賬戶扣除金額,以及向目標賬戶新增金額,這兩個資料庫操作的總和,構成一個完整的邏輯過程,不可拆分。這個過程被稱為一個事務,具有ACID特性。 0. A

在Eclipse中執行JAVA程式碼遠端操作HBase的示例

下面是一個在Windows的Eclipse中通過JAVA操作一個Linux上執行的hbase的示例。 Hbase的配置需要注意下面一些要點: 1,伺服器端用主機名配置hadoop和hbase,不要用IP 比如如下: <property>    <name&

使用java如何操作elasticsearch?簡單示例

exception 工具類 del ets response src res artifact ket 在線API:https://www.elastic.co/guide/en/elasticsearch/client/java-api/2.4/transport-cli

zookeeper客戶端操作JAVA程式碼操作CURD

總結:zookeeper相當於一個遠端平臺,我們可以將資料放在上面,他是一個樹形結構,每一個節點稱為一個Znode 資料模型:每個節點或稱為目錄,都可以存放資料並且存放節點,有雙重功能 重點watch機制: ZooKeeper 中,引入了 Watcher 機制來實現這種分散式的通知功能

使用java操作zookeeper(五)

之前使用的客戶端是3.4.6,後來換成了3.5.3-beta 版本,前面的知識中也有對3.5.x一些知識點的補充,往後的客戶端版本都使用該版本,下面的介紹也是基於3.5.3-beta的。 java操作zookeeper pom新增依賴 <depende

使用java操作zookeeper實現kafka-topics.sh的功能

使用java操作zookeeper實現kafka-topics.sh的功能 需求 程式碼如下 遇到的問題 需求 因為工作要求,需要對測試環境的kafka的所有topic增加分割槽。因為topic很多,所以手動使用命令列實現不太現實(寫這

mongodb基本命令和Java操作API示例

1.Mongo3.2 java API示例:http://www.cnblogs.com/zhangchaoyang/articles/5146508.html2.MongoDB基本命:http://www.cnblogs.com/xusir/archive/2012/12/

java使用Jsch實現遠端操作linux伺服器進行檔案上傳、下載,刪除和顯示目錄資訊

1 package com.fline.aic.utils; 2 3 import java.io.BufferedReader; 4 import java.io.File; 5 import java.io.FileInputStream; 6 import jav

2018-07-18:03-java操作zookeeper

客戶端操作zookeeper學習完後,我們要使用java控制zookeeper。我們先用apache提供的zookeeper功能來操作zookeeper伺服器。 我們建立的每個zookeeper都是一個客戶端連結 先看程式碼,然後解釋 1.建立

使用Java API、Curator操作zookeeper的acl許可權

zk原生api操作acl許可權 預設匿名許可權 ZooKeeper提供瞭如下幾種驗證模式(scheme): digest:Client端由使用者名稱和密碼驗證,譬如user:password,digest的密碼生成方式是Sha1摘要的base64形式 auth:不使用任何id

使用Java遠端連線操作Redis

前言: Redis是目前十分流行的key-value型別儲存系統,因為其高效的效能,主從同步的架構,豐富的儲存方式以及極其簡便的操作備受開發者青睞的一款工具。為了保證效率,資料都是快取在記憶體中,redis會週期性的把更新的資料寫入磁碟或者把修改操作寫入追加的

Java在Windows下使用Hbase操作Hadoop示例

(1)解決jar包依賴問題,可以使用兩種方式1、直接建立maven工程,編寫pom檔案,新增依賴的jar包宣告2、直接下載對應的hbase的linux壓縮包,解壓後拷貝資料夾lib下的所有jar包注意:    在執行過程中會報錯:java.lang.NoClassDefFou