gpt4 book ai didi

Laravel 和 Redis - 尽管超时设置为 1800 秒,但 10 分钟后作业被终止

转载 作者:可可西里 更新时间:2023-11-01 11:14:49 25 4
gpt4 key购买 nike

我在我的 laravel 应用程序上使用多个 redis 队列来管理重复发生的任务。

除了推送到队列的作业通常运行时间超过 10 分钟 - 大约 9-15 分钟外,一切正常。

在 Laravel forge 上,我在超时为 1800 的 redis 队列上创建了一个新工作程序,但运行时间超过 10 分钟的作业仍然被终止。不到 10 分钟的作业会按预期工作。

是否缺少任何配置?

最佳答案

您应该在 config/queue.php 中将 retry_after 值设置为 1800。

您可以创建多个使用相同连接的 Redis 队列,并在指定的队列上调度您的作业。

队列.php:

'redis' => [
'connection' => env('QUEUE_REDIS_CONNECTION'),
'driver' => 'redis',
'queue' => 'default',
'retry_after => 60
],
'redis_low' => [
'connection' => env('QUEUE_REDIS_CONNECTION'),
'driver' => 'redis',
'queue' => 'email',
'retry_after => 1800
]

在你的工作中:

Job::dispatch()->onQueue('email');

关于Laravel 和 Redis - 尽管超时设置为 1800 秒,但 10 分钟后作业被终止,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53568610/

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