chrisboulton/php-resque-scheduler
delay()), but offers deeper Resque-specific scheduling capabilities (e.g., cron-like syntax, recurring jobs).schedule:run command but provides Resque-specific optimizations.failed_jobs table). Custom integration required.delay() or schedule:run in edge cases (e.g., timezone handling, job retries).failed_jobs table?schedule:run or packages like spatie/laravel-schedule-delayed-jobs for delayed jobs?schedule:run or external cron.Artisan::schedule(), delay() calls).class ResqueJobWrapper {
public static function wrap(LaravelJob $job, Carbon $delayedAt) {
return new ResqueJob([
'class' => get_class($job),
'payload' => serialize($job),
'delayed_at' => $delayedAt->timestamp,
]);
}
}
delay() calls with Resque Scheduler’s Resque::enqueueIn() or Resque::enqueueAt().Artisan::schedule() entries to Resque Scheduler’s cron syntax (if using recurring jobs).php vendor/bin/resque worker --queue=scheduled,default,high
HandleQueuedJobs middleware support).Carbon (requires explicit configuration).schedule:run) in favor of Resque Scheduler.failed_jobs table may require custom logging (e.g., Redis-based tracking).resque-web or custom metrics).resque:stats).| Failure Scenario | Impact | Mitigation |
|---|---|---|
| Redis downtime | Scheduled jobs fail silently. | Use Redis HA (sentinel/replication). |
| Resque worker crash | Scheduled jobs pile up. | Supervisor/process manager (e.g., PM2). |
| Job serialization errors | Jobs fail to execute. | Validate job payloads; use fallback logging. |
| Timezone misconfiguration | Jobs run at wrong times. | Enforce UTC in Resque and Laravel. |
| Unhandled exceptions in jobs | Jobs exit with errors. | Implement global exception handlers. |
| Package incompatibility (PHP/Redis) | Jobs fail to schedule. | Pin package version; test on target stack. |
resque-web, resque-cli).schedule:run).How can I help you explore Laravel packages today?