【问题标题】:How do I implement a request timeout in grails?如何在 grails 中实现请求超时?
【发布时间】:2011-04-11 23:02:22
【问题描述】:

我希望能够在 grails 中设置可配置的(通过控制器/操作)请求超时。目标是以确定性的方式处理罕见的高负载故障模式。例如,我知道如果给定的控制器/动作没有在 30 秒内返回,那么就说明出了问题,我不想让用户挂起。

如果可能,我希望在应用程序逻辑中处理此问题,因为可能会根据事件的条件进行合理的恢复或消息传递。

过滤器不起作用,因为时间可能在请求处理生命周期的任何地方到达。

【问题讨论】:

  • @Tom - 我认为这不是那个的副本。引用的问题是关于会话超时;这是每个请求。
  • @Rob。是的,我的错。向@Chris Alef 道歉。

标签: grails timeout request


【解决方案1】:

我认为这并不容易实现。您可能受限于您正在使用的 Servlet 容器的功能。例如,使用 tomcat 你可以设置一个connectionTimeout。不幸的是,这可能无法为您提供所需的控制,因为超时和响应更多地受容器支配。

您可能有一种方法可以使用后台线程、计时器、中断和一些黑魔法来实现,但这可能是不明智的做法。

我在该主题上找到了几个邮件列表讨论:

【讨论】:

    猜你喜欢
    • 2011-03-13
    • 2011-10-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 2011-02-26
    相关资源
    最近更新 更多