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

Technical Evaluation

Architecture fit: This is not a Laravel-native package and does not integrate with Laravel’s queue, scheduler, events, or service container out of the box. It is a sidecar scheduler for php-resque-ex, storing delayed and recurring jobs in Redis and enqueuing them to Resque queues. It fits only when the application already runs php-resque-ex workers and needs a transitional scheduler. For a Laravel application using database/Redis/SQS queues and Laravel Scheduler, it is an architectural mismatch.

Integration feasibility: Feasible only with a compatibility audit. Adoption would require php-resque-ex, a compatible Redis client, job classes, queue naming conventions, and a long-running process under Supervisor/systemd. There is no Laravel service provider, configuration wrapper, health endpoint, or first-class observability. A TPM should treat integration as a small platform project, not a Composer-only change.

Technical risk: High. The package is archived, last released in 2015, has a small community, and an unknown repository location. It is likely PHP 5-era and may conflict with modern PHP 8+, Laravel, and dependency constraints. Security patching, Redis compatibility, timezone/DST behavior, duplicate enqueue prevention, and scheduler HA are unresolved until proven. MIT licensing permits a fork, but forking transfers maintenance ownership to the team.

Key questions: Does the team already operate php-resque-ex in production? Which PHP, Redis, and php-resque-ex versions are required? How are recurring schedules timezone-aware? Is there locking or leader election to prevent duplicate scheduler processes? What happens to missed jobs after downtime? Are jobs idempotent? Who owns a fork if upstream is unavailable? What is the exit plan to Laravel Scheduler or a maintained queue system?

Integration Approach

Stack fit: Use only as a legacy bridge where php-resque-ex is already the job runtime. Do not introduce it into a greenfield Laravel stack; Laravel Scheduler plus Redis/database queues, or a maintained scheduler, is the lower-risk fit. If adopted, isolate it as infrastructure rather than embedding it in application code.

Migration path: Inventory existing php-resque-ex jobs, queues, schedules, and Redis keys. Pin the package and all transitive dependencies in a dedicated container. Run the scheduler in parallel with existing scheduling, shadow scheduled outputs, compare enqueue behavior, then cut over queue-by-queue. Keep a documented rollback and a decommission plan before production adoption.

Compatibility: Validate PHP runtime compatibility, Redis client behavior, php-resque-ex job class autoloading, queue names, process-manager configuration, and timezone handling. Confirm whether delayed timestamps are Unix timestamps or date strings, and whether cron expressions match operational expectations across DST boundaries.

Sequencing: First complete a dependency and security audit. Second, build a proof of concept with representative one-off and recurring jobs. Third, add process supervision, structured logging, heartbeat monitoring, and Redis backup/restore. Fourth, run in parallel and gate production on missed-job, duplicate-job, and restart tests. Fifth, assign a fork owner and a replacement roadmap; stop if PHP compatibility or HA requirements cannot be met.

Operational Impact

Maintenance: High relative to value. An archived dependency requires the team to own patching, PHP upgrades, Redis compatibility, and bug fixes. Budget for a fork and periodic dependency review, or avoid adoption entirely.

Support: Community-only and effectively self-supported. There is no vendor SLA, active release stream, or guaranteed security response. TPM should require an internal owner, runbook, escalation path, and explicit acceptance of the maintenance burden.

Scaling: Worker capacity can scale horizontally, but the scheduler itself is a long-running polling process and a likely single point of failure. HA requires external locking or leader election to avoid duplicate scheduling. Redis sizing, queue depth, poll interval, and schedule volume must be load-tested.

Failure modes: Scheduler downtime causes missed or late jobs; restart can duplicate enqueues without idempotency; Redis outage blocks scheduling; clock skew and DST changes can shift recurring jobs; long-running processes can leak memory; queue backlog can hide scheduler failure; and sparse observability can make failures silent. Monitor scheduler heartbeat, overdue schedules, enqueue counts, Redis latency, and queue depth.

Ramp-up: Moderate for teams already familiar with Resque and Redis, but steep for Laravel-only teams because the operational model is external to Laravel. Documentation is sparse, so ramp-up depends on code reading, proof-of-concept testing, and runbook creation. TPM recommendation: reject for new platforms; permit only as a time-boxed legacy bridge with a funded fork, monitoring, and a dated exit plan.

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.
mehedimi/laravel-amp-mail
happones/laravel-vue-i18n-generator
jwerd/inertia-table
siberfx/flysystem-wasabi
hollyit/token-replace
ippanelcom/laravel-sdk
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel