JBossCache创建用于JMX bean的uniqueId。如果我通过JMX在jboss.cache:service = JBossCache上查看,我会看到随机生成的东西,例如“ 12e4860e”,“ 170278e5”……现在有几个持久性单元,我不知道哪个是哪个。实际上,有一个名为给定集群名称的Bean,但是这个Bean不包含任何统计信息,但是它的RPCManager显示了作为成员的唯一一个。统计数据似乎在唯一命名的Beans处。

有人知道我如何配置uniqueId或如何区分持久性单元吗?

我正在将JBossCache(3.1.0.GA)用作Hibernate 3.4和Glassfish v2的2LC。

最佳答案

经过一番调查,我得出以下答案:您不能! (至少对于本地缓存而言)我使用本地查询缓存,而这些正是我所想知道的。

JmxRegistrationManager.processBaseName(ObjectName baseName)说明原因:

if (cacheSpi.getConfiguration().getCacheMode().equals(Configuration.CacheMode.LOCAL)) {
    objectNameBase = LOCAL_CACHE_PREFIX + Integer.toHexString(System.identityHashCode(cacheSpi));
}


因此,没有现成的更改名称的方法。

另一方面,集群缓存在配置中以ClusterName命名。

关于java - JBossCache:设置唯一ID以进行正确的JMX监视,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7081827/

10-11 22:35