环境:
windows10
JDK1.8
vmware虚拟机3台:centos7server
centos7配置的zookeeper3.6.3
通过另一台vmware虚拟机访问zookeeper非常快
但是通过windows10上的idea连接zookeeper就会非常慢,得有30秒
我试着在windows上也装了一个zookeeper,结果zookeeper客户端连接本地zookeeper 服务 也会非常慢。
可以试一下,如果帮助,请采纳!
愿因:如果host中没有ip到主机名的映射,ZooKeeper创建过程中会调用ZooInetAddress.getHostName()这个方法从网络中获取主机名,这里耗费时间太长所致。
解决方案:在创建ZooKeeper时,传入ZKClientConfig对象,并配置一个属性,代码如下
String connectString="10.1.1.1";
ZKClientConfig zkClientConfig = new ZKClientConfig();
zkClientConfig.setProperty(ZKClientConfig.ZOOKEEPER_SERVER_PRINCIPAL,"zookeeper/"+connectString);