欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

HBASE客户端超时问题

时间:2023-05-12

        在遇到通过客户端API获取集群状态的时候,出现habse超时问题。

代码如下:

//获取集群的信息 public void getInfoCluster(){ System.out.println("开始执行"); ClusterMetrics clusterMetrics = null; try { clusterMetrics = admin.getClusterMetrics(); } catch (IOException e) { e.printStackTrace(); } //获取集群region个数 int regionCount = clusterMetrics.getRegionCount(); System.out.println("集群个数:"+regionCount); //获取regionserver个数 List serversName = clusterMetrics.getServersName(); for (ServerName serverName : serversName) { System.out.println(serverName.getHostname()); } //获取每个regionserver上加载的region个数 double averageLoad = clusterMetrics.getAverageLoad(); System.out.println(averageLoad); }

首先尝试了调大了配置文件中关于超时相应的时间,但是未能成功解决。确定了hbase和zk正常运行,本机windows10可以正常telent通相应的168000等通信端口。最后发现是本机的项目的pom.xml上的hbase-client依赖版本低于集群的hbase版本,采取更换高版本的hbase-client依赖可以解决问题。

        (下图运行的源代码做了一些更改,但是已经没有出现超时问题,可以正常通过API获取集群状态负载信息)

 

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。