zookeeper数据迁移


在不停机的情况下,实现集群之间数据迁移代码:

 1 private void create(ZooKeeper zk1, ZooKeeper zk2, String path) throws Exception {
 2         List<String> list = zk1.getChildren(path, null);
 3         for (String str : list) {
 4             if (path.endsWith("/")) {
 5             } else {
 6                 path = path + "/";
 7             }
 8             System.out.println(path + str);
 9             zk2.create("/wapage_back" + path + str, zk1.getData(path+str, false, null), Ids.OPEN_ACL_UNSAFE, CreateMode.PERSISTENT);
10             create(zk1, zk2, path + str);
11         }
12         if (!path.endsWith("/")) zk2.setData("/wapage_back" + path, zk1.getData(path, false, null), -1);
13     }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM