首页 > 解决方案 > Unicorn 不同控制器动作的不同超时

问题描述

我有简单的问题,但找不到答案。我可以为不同的控制器操作设置不同的超时吗?

原因是我为 d3.js 图表提供了一个巨大的 json,而独角兽在 30 秒后杀死了工人。

例如,我可以通过将超时更改为 60 秒来解决问题,但我认为为任何其他应该在 30 秒内真正完成的作业/操作设置如此大的超时设置并不是一个好的解决方案。有没有办法只为一个动作指定超时?

标签: ruby-on-railsunicorn

解决方案


这是一个硬限制,没有办法将它用于特定操作。它正在配置主进程,它将向工作人员发送 SIGKILL。

https://yhbt.net/unicorn/Unicorn/Configurator.html#method-i-timeout https://devcenter.heroku.com/articles/request-timeout#timeout-behavior

也许你可以使用https://github.com/ankane/slowpoke(我没试过)


推荐阅读