6.3. 配置数据网格以注册 JMX MBeans
Data Grid 可以注册可以用来收集统计信息并执行管理操作的 JMX MBeans。您必须单独启用 JMX 的统计,否则 Data Grid 都为所有统计属性提供 0
值。
流程
修改缓存容器配置以以下方法之一启用 JMX:
-
声明:在缓存容器中添加 <
jmx enabled="true"
/> 元素。 -
programmatic: 调用
.jmx ().enable ()
方法。
声明
<cache-container> <jmx enabled="true" /> </cache-container>
programmatic
GlobalConfiguration globalConfig = new GlobalConfigurationBuilder() .jmx().enable() .build();
6.3.1. 命名多个缓存管理器
如果多个 Data Grid Cache Manager 在同一 JVM 上运行,您应该唯一地标识每个缓存管理器以防止冲突。
流程
- 在您的环境中唯一标识每个缓存管理器。
例如,以下示例将 "Hibernate2LC" 指定为缓存管理器名称,这会导致名为 org.infinispan:type=CacheManager,name="Hibernate2LC"
的 JMX MBean。
声明性
<cache-container name="Hibernate2LC"> <jmx enabled="true" /> ... </cache-container>
以编程方式
GlobalConfiguration globalConfig = new GlobalConfigurationBuilder() .cacheManagerName("Hibernate2LC") .jmx().enable() .build();
6.3.2. 在自定义 MBean 服务器中注册 MBeans
Data Grid 包含一个 MBeanServerLookup
接口,可用于在自定义 MBeanServer 实例中注册 MBeans。
流程
-
创建
MBeanServerLookup
的实现,以便getMBeanServer ()
方法返回自定义 MBeanServer 实例。 - 使用类的完全限定域名配置 Data Grid,如下例所示:
声明性
<cache-container> <jmx enabled="true" mbean-server-lookup="com.acme.MyMBeanServerLookup" /> </cache-container>
以编程方式
GlobalConfiguration globalConfig = new GlobalConfigurationBuilder() .jmx().enable().mBeanServerLookup(new com.acme.MyMBeanServerLookup()) .build();
6.3.3. Data Grid MBeans
Data Grid 公开了代表可管理资源的 JMX MBeans。
org.infinispan:type=Cache
- 可用于缓存实例的属性和操作。
org.infinispan:type=CacheManager
- 可用于缓存管理器的属性和操作,包括数据网格缓存和集群健康统计信息。
有关可用 JMX MBeans 的完整列表以及描述和可用的操作和属性,请参阅 Data Grid JMX 组件 文档。
其他资源