ZooKeeper从单个主机断开多个连接

hvvq6cgz  于 7个月前  发布在  Apache
关注(0)|答案(1)|浏览(65)

我在我的Web应用程序中使用ZooKeeper,发现了一个非常奇怪的问题:如果我将两个应用程序(都使用zookeeper)部署到同一个tomcat,当tomcat启动时,一个应用程序中的ZooKeeper会莫名其妙地断开连接。
下面是我的代码,非常简单:

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

v7pvogib

v7pvogib1#

从ZooKeeper的Angular 来看,这种用法是正确的。你可以创建多个连接到一个服务器。
问题可能是服务器上存在一个名为maxClientCnxns的属性,它限制了来自单个IP地址的连接。有关详细信息,请参阅maxClientCnxns上的Zookeeper文档。
问候,克里斯蒂安

相关问题