armxy/laravel-internal-queue

Laravel 内部队列驱动程序(推送到后台)

v0.1.7 2015-08-17 09:00 UTC

This package is not auto-updated.

Last update: 2024-09-28 16:15:28 UTC


README

将函数推送到后台,立即运行或稍后运行。

来源: https://github.com/barryvdh/laravel-async-queue

这是一个内部队列,将队列存储在数据库中。唯一的不同之处在于,闭包被发送到后台,而无需等待响应。此包可以作为运行后台临时任务的替代方案,无需设置“真正的”队列驱动程序。

安装

使用 Composer 安装此包的最新版本

composer require armxy/laravel-internal-queue

将服务提供者添加到 config/app.php 中的 providers 数组

'Armxy\Queue\InternalQueueServiceProvider',

您需要为此包运行迁移

$ php artisan migrate --package="armxy/laravel-internal-queue"

或发布它们,以便将它们复制到您的常规迁移中

$ php artisan migrate:publish armxy/laravel-internal-queue

现在您应该能够在 config/queue.php 中使用内部驱动程序

'default' => 'internal',

'connections' => array(
    ...
    'internal' => array(
        'driver' => 'internal',
    ),
    ...
}

默认情况下,使用 php 作为二进制路径。您可以通过向队列配置添加 binary 选项来更改此设置。您还可以添加额外的参数(例如 HHVM 的参数)

'connections' => array(
    ...
    'internal' => array(
        'driver' => 'internal',
        'binary' => 'php',
        'binary_args' => '',
    ),
    ...
}

它应该与同步驱动程序具有相同的工作方式,因此无需运行队列监听器。缺点是无法实际排队或计划任务。Queue::later() 也直接触发,但在后台运行 sleep($delay)。有关更多信息,请参阅 https://laravel.net.cn/docs/queues