将所有区域检索为客户端缓存

时间:2015-09-19 16:49:28

标签: gemfire geode

我正在寻找一种以编程方式检索所有区域并返回计数/大小的方法。我可以看到gfsh如何拥有“列表区域”但似乎无法找到支持java api命令。我试过了

cache = ClientCacheFactory().addPoolLocator().create();
RegionService regionService =   
clientCache.createAuthenticatedView(properties);

但结果是regionService.rootRegions为空。我可以获得查询服务并运行类似“从/ UserRegion中选择计数(*)”但想要动态检索区域。

1 个答案:

答案 0 :(得分:0)

您可以通过JMX客户端获取Gemfire管理服务的区域列表。

MemberMXBean mbeanProxy =
    (MemberMXBean) MBeanServerInvocationHandler.newProxyInstance(
    mbeanServerConnection, mbeanName, MemberMXBean.class, true);
String[] listRegions = mbeanProxy.listRegions();
for (int i = 0; i < listRegions.length; i++) {
    System.out.println(listRegions[i]);
}
相关问题