mcpField
L
laravel-jobs

laravel-jobs

github.com/leeovery开发1551 次安装2 周前更新
代码仓库

关于 laravel-jobs

laravel-jobs 是面向 Laravel 开发者的技能,介绍后台任务和事件监听器模式。它强调让任务仅负责委派,并将领域逻辑放在 actions 中。

主要功能

  1. 01将任务委派给 actions
  2. 02配置队列、重试和超时
  3. 03定义唯一任务与任务中间件
  4. 04组织事件监听器
  5. 05选择任务或同步 action

适用场景

  1. 01将后台处理委派给 actions
  2. 02设置队列任务的重试和超时行为
  3. 03通过唯一任务避免重复执行
  4. 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