用例子检查弹簧性能和瓶颈的工具

时间:2014-01-29 08:22:57

标签: java performance spring hibernate spring-mvc

我是所有这些性能改进的新手。任何人都可以提供一些好的工具或技术的名称,用于检查Web应用程序的性能,并在服务器端和客户端找到应用程序中的瓶颈。如果任何人可以提供这些工具或技术的链接示例或教程,那将非常有帮助。在此先感谢您的帮助。

使用VisualVM我得到了以下结果

VisualVM Memory Profiler for my Web application

请让我知道如何在我的应用程序中查找负责此操作的代码。

2 个答案:

答案 0 :(得分:2)

您是否尝试过visualVM这个免费且功能强大的工具来跟踪J2EE性能应用程序的一些功能:

  • 提供CPU分析。
  • 提供有关主题的所有信息。
  • 提供JVM堆和内存状态。
  • 提供有关GC活动的信息。

它带有JDK包,因此您无需安装它,有关详细信息,请查看this

答案 1 :(得分:1)

提高Web应用程序的性能涉及到几个方面。

改进应用程序代码涉及:

  • 应用缓存 - 例如JCS,EHCache
  • 压缩HTTP请求
  • 避免嵌入Javascripts
  • 平衡负载 - 水平/垂直缩放
  • Cookie大小缩减

使用分析工具,例如 JProfiler,jProbe,JRockit,VisualVM

已更改的问题

已修改

你出现内存不足错误吗? 要查找与内存相关的问题,请定期拍摄快照并查找可能的泄漏。使用 Deltas模式,您可以在特定时间段内或在执行操作时轻松查看新分配和处置的对象,从而可以轻松识别内存泄漏。此外,内存数据可以保存为.nps快照,以后可以使用比较功能将其与其他内存快照进行比较。识别出内存泄漏后,您可以使用内置的HeapWalker进一步调查泄漏。 HeapWalker已得到增强,可支持显示保留的大小,并提供强大的OQL脚本引擎。

此外,您可以使用其他工具进行堆分析,例如:

  • HAT,Java堆分析工具
  • YourKit Java Profiler
  • Eclipse的
  • Memory Analyzer project,由SAP为他们做出贡献。
  • HeapWalker也是一个不错的选择。