如何获取Oracle Coherence群集中的所有缓存名称?
发布时间:2021-01-18 00:33:45 所属栏目:百科 来源:网络整理
导读:我正在运行Oracle coherence集群并使用扩展客户端连接到集群. 如果有多个扩展客户端继续加入和离开oracle coherence集群,则有可能一个服务创建了一些缓存并离开了集群,但这些缓存存在于集群中. 我希望在任何时间点都可以在群集中显示所有缓存名称. 是否可
我正在运行Oracle coherence集群并使用扩展客户端连接到集群.
我希望在任何时间点都可以在群集中显示所有缓存名称. 是否可以获取所有缓存名称? cacheService中有一个名为getCacheNames的API,它返回与该服务对应的所有缓存名称. 但是,如何获取属于客户端的其他服务创建的缓存名称,这些服务不再是活动但缓存存在于群集中? [更新]: – 是否有任何API可以执行maps命令或任何直接使用JAVA代码执行此命令的方法. 解决方法迟到总比不到好…这是一个粗略的例子,如果你想在生产中使用它需要一点整理… Enumeration serviceNames = CacheFactory.getCluster().getServiceNames(); while(serviceNames.hasMoreElements()){ String serviceName = (String)serviceNames.nextElement(); Service service = null; try{ service = CacheFactory.getService(serviceName); }catch(Exception e){ continue; } if(service instanceof CacheService){ CacheService cacheService = (CacheService)service; Enumeration cacheNames = cacheService.getCacheNames(); while(cacheNames.hasMoreElements()){ String cacheName = (String)cacheNames.nextElement(); System.out.println("<<<" + cacheName); } } } (编辑:滁州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |