【问题标题】:Spring MVC request is too slowSpring MVC 请求太慢
【发布时间】:2017-07-18 16:19:45
【问题描述】:

我有一个使用 Spring MVC 框架的 Web 应用程序,Tomcat for 7 用于前端,调用 Websphere 作为后端。

在某些页面中,我有调用控制器以插入或更新数据的 jsp 文件。 当我尝试发送一些数据时,这很有效,但是当我尝试发送更多数据时,应用程序无法响应并超时。问题是.. 例如,当我单击一个 href 打开一个页面,该页面传递输入数据时,这不能进入控制器方法(或者它很慢)。所以问题不在于后端,也不在于我认为的前端。 但我不知道我要做什么.. 有什么建议吗?

谢谢

【问题讨论】:

  • 使用 SQLPROFILER 查找运行时间最长的查询并尝试解决它。这是免费 SQL PROFILER expressprofiler.codeplex.com 的链接
  • 它不调用任何查询,它之前停止。当我单击 href 时,它会尝试发送请求,但会进入循环,并且永远不会在控制器中输入任何内容。我从 localhost 启动应用程序
  • 打开浏览器控制台查看是否有任何错误或异常。没有到达控制器似乎您可能缺少任何必需的参数或其他东西。还要检查您的网络标签
  • 我检查过,没有错误。它只是等待调用..事实上,当我尝试使用少量数据输入来发送它时,它工作正常,但是当我尝试以这种方式处理很多它时。我不知道它在点击和调用方法之间做了什么。也许是一些网络查看??我不知道...
  • 你用的是什么浏览器?

标签: java spring jsp spring-mvc tomcat


【解决方案1】:
  1. 不使用调试模式试试。
  2. 控制器后面的所有繁重逻辑处理都应处于异步模式。
  3. 使用性能测试来检测您的瓶颈

如果您对具体案例的解决方案感兴趣,如果您通过git 分享您的应用程序,我会改进我的答案。

【讨论】:

  • 瓶颈在点击和控制器方法调用之间。完成请求需要几分钟。我不知道点击href和方法控制器之间是什么..
  • 您的网络上有 java 脚本请求构建器和处理程序吗?也可以分享一下吗?
  • 我有一个调用方法控制器的 href 请求..现在我不能分享了。!但是仅供参考,当我尝试传递少量数据时它工作正常.. 问题是当我单击 href 并控制浏览器上的网络选项卡时,我看到它尝试发送请求但需要很长时间
  • 1. 检查您的 JavaScript。 2. 您应该检查传输级别的所有请求处理程序(可能有一些代理、防火墙等)。要跳过传输级别检查,您应该在没有代理、安全限制、没有请求拉链的 PC 上尝试您的应用程序...3. 如果在very trusted 空间中一切正常,您可以继续考虑如何添加在您的请求处理程序和其他人员中逐个代理。 4.如果very trusted空间上的请求时间会很大,你应该在controller handlers之前考虑(WebFilters,ControllerAdvice,AOP拦截器)。
  • 肯定有代理,我不能停用它。如果有网络过滤器,我应该控制,但我不这么认为。我在 localhost 中启动所有内容,然后没有其他调用..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2015-12-30
  • 2015-07-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-01
相关资源
最近更新 更多