gpt4 book ai didi

grails - 如何在grails中实现请求超时?

转载 作者:行者123 更新时间:2023-12-02 15:39:06 27 4
gpt4 key购买 nike

我希望能够在grails中设置可配置的(通过 Controller /操作)请求超时。目的是确定性地处理罕见的高负载故障模式。例如,我知道如果给定的 Controller / Action 在30秒内没有返回,则说明存在严重错误,并且我不想让用户挂起。

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

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

最佳答案

我认为这不容易实现。您可能仅限于所使用的Servlet容器的功能。例如,使用tomcat可以设置connectionTimeout。不幸的是,这可能无法为您提供所需的控制权,因为超时和响应更多地取决于容器。

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

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

  • http://grails.1312388.n4.nabble.com/How-to-change-request-timeout-td1356007.html

    彼得·莱德布鲁克内部引用:

    I don't know of a Grails feature for this. It supports the session time out, but not a request time out. Servlet containers have connection timeouts.

  • http://www.mail-archive.com/users@tomcat.apache.org/msg38090.html
  • 关于grails - 如何在grails中实现请求超时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3705595/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com