Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Php Resque Ex Scheduler Laravel Package

kamisama/php-resque-ex-scheduler

A PHP port of Resque's scheduler that queues delayed background jobs for later execution. This extended fork adds scheduling support to php-resque, letting you enqueue jobs to run at a future time and keep Redis-backed workers processing them.

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Legacy job infrastructure modernization: Informs the decision of how to add delayed and recurring jobs to an existing php-resque-ex-based worker fleet without a full queue migration.
  • Delayed-work backlog strategy: Enables one-off delayed jobs (e.g., send a follow-up email in 24 hours, apply a "cool-down" before re-processing an order, schedule a retry-after) where the business logic is time-bound but the app does not yet have a native scheduler.
  • Recurring task catalog: Supports defining cron-style recurring work (nightly reports, cache warmups, cleanup jobs, sync/export tasks) that can be expressed declaratively and stored in Redis rather than scattered across crontabs.
  • Build vs. buy for scheduling: Provides a cheap "buy" option for a legacy stack, versus building a bespoke scheduler or spending the roadmap on a full migration to Laravel's queue + scheduler.
  • Roadmap sequencing: Clarifies the split between short-term continuity (keep the existing Resque workers alive with this scheduler) and the medium-term investment (migrate to Laravel queues, Horizon, and schedule:run).
  • Operational decisions: The dedicated long-running scheduler process is a concrete operational item — process supervision, restart semantics, Redis availability, and who owns the deployment.

When to Consider This Package

Consider it when:

  • The application already runs php-resque-ex workers, and adding time-based jobs is the only missing capability.
  • You need a low-effort bridge for one-off delays or cron-style recurring jobs and cannot fund a queue migration this quarter.
  • The team is comfortable pinning and vendoring a small, permissively licensed (MIT) dependency and owning it internally.
  • Redis is already part of the stack and is considered acceptable as the schedule store.
  • The workload is low-to-moderate volume, tolerant of a polling scheduler, and does not require exactly-once guarantees.

Look elsewhere when:

  • The package is archived and last released in 2015 — no security patches, no PHP 8+ compatibility guarantees, no maintainer support. This is the primary disqualifier for anything revenue-critical or long-lived.
  • You are on modern Laravel: Queue::later(), dispatch()->delay(), schedule() in the console kernel, schedule:run/schedule:work, Horizon, and job batching cover delayed and recurring work natively with better observability.
  • You need monitoring, retries with backoff, dead-letter handling, uniqueness locks, or metrics — this scheduler does not provide them.
  • You need distributed coordination (multiple scheduler instances, leader election) or exactly-once enqueue semantics.
  • Compliance or support requirements demand a maintained vendor with a roadmap and SLAs.

How to Pitch It (Stakeholders)

To executives: This is a containment play, not a strategic bet. If we already operate php-resque-ex workers, it closes a real capability gap — scheduled and delayed background jobs — for roughly the cost of a small internal fork. It is explicitly a bridge to our queue modernization work, not a replacement for it. The package is archived and unsupported, so we should budget for it as technical debt with a defined exit: adopt, vendor, and retire it within the migration window.

To engineering: It reuses the Redis instance and job classes you already have, and the integration surface is small: define jobs, register schedules, run one supervised long-running scheduler process. The trade-offs are honest — polling-based dispatch, no built-in monitoring or retry orchestration, and an unmaintained codebase that needs pinning, vendoring, and a compatibility pass. The recommended framing is: "freeze the interface, own the code." Wrap it behind an internal scheduling abstraction so the eventual move to Laravel's native queue and scheduler is a swap of the implementation, not a rewrite of business logic.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
diephp/sequences
users-au/socialite-provider
twidpay/twid-logger
mrnewport/laravel-plaid
mrnewport/laravel-repo
mrnewport/laravel-docsign
mrnewport/laravel-stow
mrnewport/laravel-flow
mrnewport/laravel-priceable
mrnewport/laravel-nestedterms
fredmeng/laravel-apidoc-generator
itstructure/laravel-multilingual-tools
pdustdar/elasticsearch
markupai/php-sdk
rlacerda83/lumem-microservice-shipment
uni-method/symfony-lib
tacticmedia/scim-server-bundle
neika-ai/symfony-bundle
mattleads/agent-publishing-bundle
glavweb/framework-bundle