如何提高Spring MVC性能?

Nil*_*ils 2 optimization performance spring spring-mvc

是否有最佳实践如何提高spring webapps的性能?

我使用ehcache作为静态内容,尝试在我的应用程序结束时加载JavaScript,但应用程序运行不顺畅.对于一个简单的注册只有GET请求来映射url和initalize session和bean lastet超过7秒.

当然,你可以针对具体情况进行优化,但我想知道generell性能问题以及如何处理这些问题.

模式,最佳实践等在这里非常受欢迎.

Nev*_*uyt 5

一般来说,我建议:

  • 构建一个测试环境,您可以在其中执行应用程序并进入内部
  • 编写可重复的性能测试脚本,重点关注绝对性能(例如"渲染此页面需要多长时间")和大规模性能(例如"在负载下性能如何降低?")
  • 将分析器粘贴到您的测试环境中.自从我使用Java应用程序以来已经有一段时间了,但是有很多可用的应用程序.
  • 运行您的探查器时运行性能测试.弄清楚瓶颈是什么.修复瓶颈.冲洗.重复.

我通常建议不要将测试装置类似地指定给生产,因为它很难创建足够的负载来对系统施加压力.它也非常昂贵.

如果您有一个"类似生产"的环境进行测试,那么现在就去做 - 理想情况下,您将获得与测试环境类似的结果,但并非总是如此; 如果可能的话,安装探查器并查看瓶颈在哪里.

完成后,您可以将优化的应用程序部署到生产环境中.


pap*_*pap 5

创建性能测试(与jmeter一样).使用完整的分析器或仪器来分析您的应用程序.如果您使用的是spring(以及弹簧配置的数据源),我非常喜欢javamelody,它是一个简单的插件,用于检测和编译应用程序的性能统计信息.

运行测试,检查分析信息,识别瓶颈,优化最严重的违规者.重复直到满意.

Spring MVC没有固有的性能问题.性能问题来自其他领域.错误的SQL查询,缓慢的外部集成,视图中过多的JSTL疯狂等.