java - android使用zk客户端与curator连接zk获取数据失败并出现connectionLoss

标签 java android apache-zookeeper apache-curator

zk客户端:android使用curator 4.2

zk服务器:zk版本3.5.6

问题:当我连接 zk 从“/”获取数据时失败,

org.apache.zookeeper.KeeperException$ConnectionLossException:KeeperErrorCode = ConnectionLoss/

                class MyThread implements Runnable {
                    @Override
                    public void run() {
                        try {
                            String ip = "192.168.0.111";
                            System.out.println("start new");
                            ExponentialBackoffRetry retry = new ExponentialBackoffRetry(10000, 3);
                            System.out.println("end new");
                            CuratorFramework curatorFramework = CuratorFrameworkFactory.newClient(ip, retry );
                            System.out.println("end new2");

                            curatorFramework.start();

                            Stat nodeStat = new Stat();
                            byte[] nodeInfo = curatorFramework.getData()
                                    .storingStatIn(nodeStat)
                                    .forPath("/");
                            System.out.println("===node info is:" + new String(nodeInfo));

                            curatorFramework.create().creatingParentContainersIfNeeded()
                                    .withMode(CreateMode.PERSISTENT)
                                    .withACL(ZooDefs.Ids.OPEN_ACL_UNSAFE)
                                    .forPath("/nodeTest", "testData".getBytes());
                            System.out.println("wtf");
                            button1.setText("nihaoya");
                        } catch (Exception e) {
                            System.out.println( e.toString());
                        }
                    }
                }

最佳答案

ZooKeeper 中的连接字符串不仅仅是 IP 地址。您还必须包括客户端端口(通常为 2181)。另外,您应该将所有服务器包含在集合中(我假设您有 3 个)。因此,常见的连接字符串是 111.111.111.111:2181,222.222.222.222:2181,333.333.333.333:2181(当然,使用您的 IP 地址)。

关于java - android使用zk客户端与curator连接zk获取数据失败并出现connectionLoss,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59232062/

相关文章:

java - 响应 409,共享首选项管理器

android - 在 android studio 中调试时终止代码执行

android - WebView 不会在带有 CollapsibleToolBarLayout 的 NestedScrollView 中滚动

hadoop - Hbase连接问题和无法创建表

java - 为什么我的应用中的动画在从 playStore 下载时不起作用,但在 AndroidStudio 中却起作用?

java - 使用 google-java-client-api 选择非默认 googlecalendar

java - 在 HSQLDB 中插入字符串

android - Android 翻译工具,协助提供上下文

java - Flink 失去领导者并崩溃

bigdata - 在Kafka-storm中未能将偏移数据写入Zookeeper