【问题标题】:Tool for monitoring Hibernate cache usage用于监控 Hibernate 缓存使用情况的工具
【发布时间】:2010-12-22 19:07:13
【问题描述】:

是否有任何工具可以监控 Hibernate 二级缓存的使用情况?我知道我可以使用 Hibernate API 来检索此类信息。但是当我的应用程序本身不读取信息并且我无法修改它时,我该怎么办?有没有办法从应用程序外部读取缓存统计信息?

【问题讨论】:

  • 您的应用程序在哪个容器中运行?

标签: java hibernate orm caching monitoring


【解决方案1】:

引用 Hibernate documentation:

3.4.6。休眠统计

如果您启用 hibernate.generate_statistics, Hibernate 公开了许多指标 在调整运行时很有用 系统通过 SessionFactory.getStatistics()。 Hibernate 甚至可以配置为 通过 JMX 公开这些统计信息。读 中接口的 Javadoc org.hibernate.stats 了解更多 信息。

您会找到org.hibernate.stats 包摘要here

对于 JMX 部分,请查看 Publishing statistics through JMX

对于更高级的东西,您必须依赖缓存提供商的特定功能。

【讨论】:

  • @Ondra 谢谢,链接已更新(为什么 JBoss 没有实现一些永久重定向到新位置,现在网上有很多链接指向无处,这违背了所有最佳实践。 ..).
  • 嗯,JBoss.org 已经经历了巨大的结构变化,不幸的是,当只有少数人负责整个网络时,链接保存并不是要考虑的优先事项......
  • 我想向 JBoss.org 团队发送重定向请求,但我不知道原始链接 :) 你还有它吗,不小心?
  • @Ondra 原始链接是hibernate.org/hib_docs/v3/api/org/hibernate/stat/…。理想情况下,应该对 javadoc 和参考指南进行重定向,例如 hibernate.org/hib_docs/v3 --> docs.jboss.org/hibernate/core/3.3
【解决方案2】:

如果您的二级缓存是 EhCache,那么您可以从其 MBean 中读取缓存状态。

请参阅 ehcache 文档中的“JMX 管理和监控”:http://ehcache.org/documentation/jmx.html

【讨论】:

    【解决方案3】:

    有一个工具可以监控通过 JMX 暴露的 hibernate 的缓存。它叫做 hibernate-jconsole,可以在这里下载 - http://hibernate-jcons.sourceforge.net/

    【讨论】:

      【解决方案4】:
      猜你喜欢
      • 2022-10-05
      • 1970-01-01
      • 2011-04-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-03-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多