关于 laravel-jobs
laravel-jobs 是面向 Laravel 开发者的技能,介绍后台任务和事件监听器模式。它强调让任务仅负责委派,并将领域逻辑放在 actions 中。
主要功能
- 01将任务委派给 actions
- 02配置队列、重试和超时
- 03定义唯一任务与任务中间件
- 04组织事件监听器
- 05选择任务或同步 action
适用场景
- 01将后台处理委派给 actions
- 02设置队列任务的重试和超时行为
- 03通过唯一任务避免重复执行
- 04为工作选择任务或同步 action
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ leeovery/ agentic-skills --skill laravel-jobs安装后在 Claude Code 中输入/laravel-jobs确认已加载。
附带文件references/jobs-listeners.md
详细介绍
Laravel Jobs
后台任务和事件监听器:委托给操作的轻量层。
核心概念
jobs-listeners.md - 任务模式:
- 将任务作为轻量委托层
- 队列配置
- 重试逻辑和超时
- 唯一任务
- 任务中间件
- 事件监听器
- 何时使用任务,何时使用同步操作
模式
final class ProcessOrderJob implements ShouldQueue
{
use Dispatchable, Queueable;
public function __construct(
public readonly int $orderId,
) {}
public function handle(ProcessOrderAction $action): void
{
$order = Order::findOrFail($this->orderId);
$action($order);
}
public function middleware(): array
{
return [new WithoutOverlapping($this->orderId)];
}
}
// Listener
final class SendOrderConfirmationListener
{
public function handle(OrderPlaced $event): void
{
SendOrderConfirmationJob::dispatch($event->order->id);
}
}
任务委托给操作。将领域逻辑放在操作中,而非任务中。
评论
支持 Markdown