madbob/laravel-queue-loopback

模拟Laravel队列驱动,用于以独立HTTP请求运行作业。

0.5.0 2023-08-15 13:51 UTC

This package is auto-updated.

Last update: 2024-09-15 16:10:37 UTC


README

这是一个用于Laravel队列子系统的模拟驱动。

当您通过此队列安排作业时,会向应用程序本身(在专用路由上)发送HTTP请求,并且它不会等待响应,因此可以在您继续处理或甚至向用户返回响应的同时,让作业以不同的独立状态执行。

这对于拥有实际异步作业很有用,无需处理工作进程、专用服务、复杂环境等,但绝对不推荐用于高强度。

安装

composer require madbob/laravel-queue-loopback

在您的 .env 文件中,设置

QUEUE_DRIVER=loopback

在您的 config/queue.php 中,在可用连接中添加以下块

'loopback' => [
    'driver' => 'loopback',

    /*
        The key is intended to protect the route used for internal execution, as
        it is still a public route and it is unprotected by the `auth`
        middleware or other native authentication methods.
    */
    'key' => 'put_here_a_random_key',
],

对于高级配置,您可以执行 php artisan vendor:publish --tag=config 以在 config/loopback-queue.php 中获得新文件,您可以在其中指定

  • 要用于内部路由的中间件组。默认情况下是一个空数组(无中间件组);如果您打算指定一个或多个组,建议定义一个新的组,不包括本地的 VerifyCsrfToken 中间件,因为用于触发作业的内部POST会因缺少CSRF令牌而失败

用法

它的工作方式与Laravel中的任何其他队列完全一样:创建 您自己的作业按常规派遣它们

但是,与常规不同,您不必执行任何 php artisan queue:work 命令或类似命令。

Loopback驱动程序不处理不同的队列或优先级。