我将使用大型Java应用程序进行性能基准测试。这样做的最佳方法是什么?
基于POJO的应用程序包含UI和WebService层的在线部分,但大多数繁重的业务逻辑是使用Spring Batch实现的长时间运行的批处理过程。该应用程序部署在JBoss Application Server上,并将数据保存在Oracle数据库中。
我期待得到的不仅是批处理的吞吐量或在线图层处理的并发请求数。我还希望获得更多的洞察力并收集一些内部指标,例如批处理作业步骤,JDBC等。此外,我将把指标与我可以从JVM,OS,应用程序服务器,数据库获得的系统范围指标相关联。
理想情况下,如果可能的话,我不想修改代码。
我实现这种性能监控的想法是依靠JMX并提供一个集中组件,可以从各种MBean收集指标并将它们关联起来。似乎我要测量的每个主要组件都是启用JMX的:
我想知道是否有任何好的开源框架/工具可以帮助我如上所述的指标的收集,关联和可视化。提前感谢您的推荐。
P.S。我完成了我的家庭作业并浏览了开源场景,但我还不想在这里提出任何具体的名称,以避免偏见。