Laravel 8 超时

2021-07-06 11:27 更新

注意:必须安装 PHP 扩展 pcntl 才能指定任务超时。

同样,任务可以运行的最大秒数可以使用 Artisan 命令行上的 –timeout 开关来指定:

php artisan queue:work --timeout=30 

但是,你也可以定义允许任务在任务类本身上运行的最大秒数。如果在任务上指定了超时,它将优先于在命令行上指定的任何超时:

<?php

namespace App\Jobs;

class ProcessPodcast implements ShouldQueue
{
    /**
     * 在超时之前任务可以运行的秒数
     *
     * @var int
     */
    public $timeout = 120;
} 

有些时候,诸如 socket 或在 HTTP 连接之类的 IO 阻止进程可能不会遵守你指定的超时。 因此,在使用这些功能时,也应始终尝试使用其 API 指定超时。 例如,在使用 Guzzle 时,应始终指定连接并请求的超时时间。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号