madbob / laravel-queue-loopback
模拟Laravel队列驱动,用于以独立HTTP请求运行作业。
0.5.0
2023-08-15 13:51 UTC
Requires
- illuminate/queue: ^8.0|^9.0|^10.0
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驱动程序不处理不同的队列或优先级。