首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >EhCache 3:如何展开统计数据bean?

EhCache 3:如何展开统计数据bean?
EN

Stack Overflow用户
提问于 2019-08-27 15:07:58
回答 1查看 537关注 0票数 1
代码语言:javascript
复制
<?xml version="1.0" encoding="UTF-8"?>
<config
        xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance'
        xmlns:jsr107='http://www.ehcache.org/v3/jsr107'
        xmlns='http://www.ehcache.org/v3'
        xsi:schemaLocation="
        http://www.ehcache.org/v3 http://www.ehcache.org/schema/ehcache-core-3.1.xsd
        http://www.ehcache.org/v3/jsr107 http://www.ehcache.org/schema/ehcache-107-ext-3.1.xsd">

    <service>
        <jsr107:defaults enable-management="false" enable-statistics="true"/>
    </service>

    <cache alias="mySlidingExpiryJCache">
        <key-type>java.lang.Long</key-type>

        <expiry>
            <tti unit="seconds">2</tti>
        </expiry>
        <resources>
            <heap unit="entries">200</heap>
        </resources>
        <jsr107:mbeans enable-statistics="true"/>
    </cache>
</config>

我想通过提取MBean来显示统计数据,但是我不知道如何提取,因为在网上我只能看到以编程方式注入的bean (另请参阅这个SO问题)。

代码语言:javascript
复制
StatisticsService statisticsService = new DefaultStatisticsService();
CacheManager cacheManager = CacheManagerBuilder.newCacheManagerBuilder()
        .using(statisticsService)
        .build();
cacheManager.init();

有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-08-27 17:16:07

您启用了JSR107/JCache统计信息。这些都可以通过JMX获得。如果您想以编程方式访问这些JMX bean,您可以这样做:

代码语言:javascript
复制
Cache cache = // a JSR107 cache
MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
ObjectName name = new ObjectName("javax.cache:type=CacheStatistics," +
  "CacheManager=" + cache.getCacheManager().getURI().toString() +
  ",Cache=" + mbeanSafe(cache.getName()));
long hits = mBeanServer.getAttribute(name, "CacheHits");

请注意,JCache Cache的创建方式与您在问题中创建的方式不同。请参阅此处的大量文档:https://www.ehcache.org/documentation/3.0/107.html

JSR107/JCache是许多Java缓存支持的标准API。它还包括通过JMX公开统计信息。可用的指标定义在:https://github.com/jsr107/jsr107spec/blob/master/src/main/java/javax/cache/management/CacheStatisticsMXBean.java

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57669349

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档