如何在 sidekiq 中设置作业超时
How set timeout for jobs in sidekiq
我在使用 sidekiq 时遇到问题:
我想为作业设置超时,这意味着当作业的处理时间大于超时时,该作业将停止。
我已经在文件 sidekiq.yml.
中搜索了如何设置全局超时配置,但我想为不同的单独作业设置单独的超时,这意味着 类 之一来定义工作人员将有特定的超时配置。
你能帮帮我吗?
非常感谢。
没有批准的方法来执行此操作。您无法在线程执行时安全地停止它。您需要更改工作以定期检查它是否应该停止。
您可以为您正在进行的任何第 3 方呼叫设置网络超时,以便它们超时。
您可以将作业代码包装在超时块中,如下所示:
超时::超时(2.hours) 做
***. do possibly long-running task *****
结束
作业将在 2 小时后自动失败。
我在使用 sidekiq 时遇到问题:
我想为作业设置超时,这意味着当作业的处理时间大于超时时,该作业将停止。
我已经在文件 sidekiq.yml.
中搜索了如何设置全局超时配置,但我想为不同的单独作业设置单独的超时,这意味着 类 之一来定义工作人员将有特定的超时配置。
你能帮帮我吗?
非常感谢。
没有批准的方法来执行此操作。您无法在线程执行时安全地停止它。您需要更改工作以定期检查它是否应该停止。
您可以为您正在进行的任何第 3 方呼叫设置网络超时,以便它们超时。
您可以将作业代码包装在超时块中,如下所示:
超时::超时(2.hours) 做
***. do possibly long-running task *****
结束
作业将在 2 小时后自动失败。