【问题标题】:monitor performance with JPA + Spring使用 JPA + Spring 监控性能
【发布时间】:2012-10-25 15:39:36
【问题描述】:

您建议使用哪些工具和方法来监控性能?我的应用程序在 Tomcat、Spring 3、JPA、Hibernate 和 solr 上运行。我注意到某个页面上有一些滞后/缓慢的活动。 该应用程序没有任何缓存设置代码。甚至是连接池。

请原谅我的初学者式问题,我现在才进入“性能监控”世界......

我知道一些需要查看的东西 - 数据库调用、连接池、索引表、缓存等。

【问题讨论】:

    标签: spring hibernate caching tomcat jpa


    【解决方案1】:
    1. 您绝对需要连接池。这很简单,有像 Bone CPCommons DBCPc3p0 这样的库可以透明地执行此操作。

    2. 您必须实施自动负载/压力测试。 JMeter 非常易于使用,其他类似的工具还有 GatlingGrinder

    3. 启用 SQL 日志记录和统计信息。很可能有太多或太复杂的查询会降低您的页面速度。

    4. 使用分析器。商业广告(JProfilerYourKit)或JVisualVM 中包含的广告。

    【讨论】:

    • 感谢托马斯。我们正在使用 JPATransactionManager 并且在数据源配置中没有任何连接池的配置(至少我可以在代码中看到 - 有没有其他方法可以验证它是否已经实现?)。如果我想使用 c3p0 conn pooling,我必须将它添加到数据源 xml 配置中,对吧?
    • @Reet:JPATransactionManager无关紧要,事务管理器指向一些DateSource,看看是什么数据源。
    • 我们正在使用 org.apache.commons.dbcp.BasicDataSource,我现在明白我应该为 initialSize 等参数添加配置。如何在 conn 之后测试新的性能数字.池化?
    • @Reet:所以您正在使用连接池。您可以尝试不同的配置值。忽略第 1 点,继续其余的。
    • @Thomasz,所以由于使用了dbcp.BasicDataSource,这意味着我正在使用conn.pooling?我在哪里可以更改配置值?我的代码是...
    【解决方案2】:

    您可以使用此应用程序来监控您的应用程序:

    http://newrelic.com/

    他有一个免费计划!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-04-16
      • 2021-06-13
      • 2019-12-16
      相关资源
      最近更新 更多