我正在开发基于OSGI的应用程序,该应用程序在Karaf上运行。我们使用JPA和Hibernate连接到mysql。使用Ehcache启用了2级缓存。我想启用Ehcache的JMX监控。我发现了一篇文章,讲述了如何在Spring应用程序(http://www.codesenior.com/en/tutorial/How-to-monitor-Ehcache-in-JMX-with-Spring-Configuration)上启用Ehcache的JMX监视。
有没有办法在Karaf上运行的OSGI应用程序上配置EHcache的JMX监控,类似于上面的示例?
答案 0 :(得分:0)
根据我的理解,你不会自己创建CacheManager
,Hibernate会这样做。
所以你必须要么:
CacheManager
并运行文章所述的ManagementService.registerMBeans
。您可以通过扩展Hibernate Ehcache提供程序来实现这一点,以便添加初始化步骤。请参阅org.hibernate.cache.ehcache.EhCacheRegionFactory
。CacheManager
已由Hibernate创建,使用net.sf.ehcache.CacheManager#ALL_CACHE_MANAGERS
映射获取它,并执行文章中的MBean初始化。