ZooKeeper断开与单个主机的多个连接

时间:2012-08-25 05:39:24

标签: apache-zookeeper disconnected

我在我的Web应用程序中使用ZooKeeper并发现了一个非常奇怪的问题:如果我将两个应用程序(都使用zookeeper)部署到同一个tomcat,那么当一个应用程序中的ZooKeeper将在tomcat启动时无法解释。

以下是我的代码,非常简单:

public class ZKTester implements InitializingBean, Watcher {

    private ZooKeeper hZooKeeper;

    public void afterPropertiesSet() throws Exception {
        hZooKeeper = new ZooKeeper("localhost:2181", 300000, this);
    }

    public void process(WatchedEvent event) {
        System.out.println("**************" + event);
    }

和spring配置文件:

<bean id="zooTester" class="com.abc.framework.cluster.ZKTester"/>

这是tomcat的启动日志:

...
**************WatchedEvent state:Disconnected type:None path:null
**************WatchedEvent state:Expired type:None path:null
...

我的使用是否有错误?

由于

L.J.W

1 个答案:

答案 0 :(得分:0)

从ZooKeeper的角度来看,用法是正确的。您可以创建与服务器的多个连接。

可能存在的问题是名为maxClientCnxns的属性,它存在于服务器上并限制来自单个IP地址的连接。有关详细信息,请参阅Zookeeper Documentation on maxClientCnxns

此致,基督徒