【问题标题】:Monitoring cache date in Ehcache using JMX and Jconsole使用 JMX 和 Jconsole 监控 Ehcache 中的缓存日期
【发布时间】:2019-03-26 03:42:18
【问题描述】:

我正在使用 JMX 方法来可视化在 Spring Web 项目中使用 Ehcache 存储的缓存数据。每当我单击 Jconsole 中的 getCache() 方法时,我都会收到一个错误,附在下面。有人可以帮我解决吗?提前致谢

配置文件:

@Configuration
@EnableCaching
public class SpringCachePocConfig implements CachingConfigurer {

    net.sf.ehcache.CacheManager newCacheManager;

    @Bean(destroyMethod = "shutdown")
    public net.sf.ehcache.CacheManager ehCacheManager() {
        //Construct you cache here.

        net.sf.ehcache.config.Configuration config = new net.sf.ehcache.config.Configuration();
        config.addCache(<Your cache>);

        this.newCacheManager = new net.sf.ehcache.CacheManager(config);
        return newCacheManager;
    }


    @Bean
    public ManagementService managementService() {
        return new ManagementService(ehCacheManager(), mbeanServer(), true, true, true, true);

    }


    @Bean
    @Override
    public CacheManager cacheManager() {
        return new EhCacheCacheManager(ehCacheManager());
    }


    @Bean
    public MBeanServer mbeanServer() {
        MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer();
        return mBeanServer;   
    }

    @PostConstruct
    public void init() {
        ManagementService.registerMBeans(ehCacheManager(), mbeanServer(), true, true, true, true);
    }


}

【问题讨论】:

    标签: spring caching ehcache jmx


    【解决方案1】:

    您必须在 jconsole 类路径中添加 ehcache jar 文件(及其支持的 jar 文件,如果有的话),例如 jconsole.exe -J-Djava.class.path=%JAVA_HOME%\lib\jconsole.jar;&lt;&lt;ehcache.jar&gt;&gt;。当从工具 - JConsole 调用此类操作时,这将解决java.rmi.UnmarshalException

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-02-15
      • 1970-01-01
      • 2022-01-11
      • 2011-09-15
      • 2021-06-14
      • 1970-01-01
      • 1970-01-01
      • 2017-06-08
      相关资源
      最近更新 更多