zoukankan      html  css  js  c++  java
  • Curator框架的使用

    Curator框架的目的是减少用户的复杂度,毕竟原生的Zookeeper难以使用。

    这里举一个使用例子。

    第一步:建立连接

    // 以下代码与192.168.1.101:2181建立了连接
    CuratorFramework client = CuratorFrameworkFactory.newClient("192.168.1.101:2181", new ExponentialBackoffRetry(1000, 3));
    client.start();

    这里的ExponentialBackoffRetry的含义是指数增长的重试间隔。根据这里的参数,第一次失败重试休息1000毫秒,第二次重试休息1000毫秒~3000毫秒,第三次失败重试休息1000毫秒~7000毫秒。这样指数增长。

    第二步:监听节点下的数据

    PathChildrenCache cache = new PathChildrenCache(client, "/test", true);
    cache.start();
    cache.getListenable().addListener(new MyListener(observer));

    这样就可以监听test节点下的所有节点了。

    第三步:实现事件处理

    实现事件处理,只需实现PathChildrenCacheListener接口即可,示例如下。

    public class MyListener implements PathChildrenCacheListener {
      @Override
      public void childEvent(CuratorFramework client, PathChildrenCacheEvent event) throws Exception {
        switch (event.getType()) {
          case CHILD_ADDED: {
            // 新的节点创建了
            ...
            break;
          }
          case CHILD_UPDATED: {
            // 节点数据更新了
            ...
            break;
          }
          case CHILD_REMOVED: {
            // 节点删掉了
            ...
            break;
          }
        }
      }
    }

  • 相关阅读:
    linux 错误总结
    linux xampp常见问题
    !WebGL
    !站点列表(无关的站点)
    代码: 瀑布流
    插件:★★★ !!!图片懒加载 lazyload.js 、 jquery.scrollLoading.js
    html调用静态json例子
    !!! jquery mobile常用代码
    国内各类“壳子”浏览器,userAgent 一览
    checkbox的美化(转)
  • 原文地址:https://www.cnblogs.com/caipc/p/6103915.html
Copyright © 2011-2022 走看看