kduma/cron

此包已废弃,不再维护。未建议替代包。

Laravel 5.1 的 webcron 队列运行器(具有运行时间限制)

v1.1.0 2015-06-09 16:06 UTC

This package is auto-updated.

Last update: 2022-10-20 04:02:00 UTC


README

Latest Stable Version Total Downloads Latest Unstable Version License SensioLabsInsight StyleCI

Laravel 5.1 的 webcron 队列运行器(具有运行时间限制)

设置

将包添加到 composer.json 的 require 部分,并运行 composer update

"kduma/cron": "^1.1"

然后在 config/app.php 中的 providers 数组中添加 Service Provider,但要在 Illuminate\Queue\QueueServiceProvider 之前

KDuma\Cron\CronServiceProvider::class,
KDuma\Cron\WebCronServiceProvider::class,

用法

命令语法类似于 queue:work --daemon,并新增了 2 个选项

artisan queue:cron [-t|--timelimit[="..."]] [-r|--runlimit[="..."]] [--queue[="..."]] [--delay[="..."]] [--force] [--sleep[="..."]] [--tries[="..."]] [connection]
  • --timelimit (-t) - 此命令可以工作的最大时间(秒)。(默认:60)
  • --runlimit (-r) - 最大队列工作作业数。(默认:无限制)

最佳实践

  • 将作业拆分为耗时较短的小任务
  • 选择时间限制时,减去最长作业的时间

Web Cron

在您的 .env 文件中添加

WEBCRON_SECRET=YOUR_SECRET

YOUR_SECRET 替换为您的密钥。现在您可以通过访问 http://<domain>/cron/YOUR_SECRET URL 来运行队列。

您还可以通过以下 .env 中的条目来配置时间限制和/或运行限制

WEBCRON_TIMELIMIT=30
WEBCRON_RUNLIMIT=25

Packagist

在 Packagist.org 上查看此包:kduma/cron