Weave Code
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 Scheduler Laravel Package

chrisboulton/php-resque-scheduler

View on GitHub
Deep Wiki
Context7

Product Decisions This Supports

  • Scheduled Job Workflows: Enables delayed or time-based job execution (e.g., sending emails at optimal times, processing batch tasks post-business hours, or triggering maintenance tasks).
  • Cost Optimization: Reduces server load by offloading non-critical jobs to off-peak hours, lowering cloud compute costs (e.g., AWS Lambda, EC2 spot instances).
  • Roadmap Acceleration: Eliminates the need to build a custom scheduling system, allowing the team to focus on core features (e.g., "We’ll use this to ship [X] feature 3 months faster").
  • Build vs. Buy: Justifies adopting an open-source solution over proprietary tools (e.g., Sidekiq Enterprise) when budget is constrained but reliability is needed.
  • Use Cases:
    • E-commerce: Schedule order confirmations for low-traffic hours.
    • Analytics: Run heavy reports nightly without impacting user experience.
    • Notifications: Delay alerts until a user’s next active session (e.g., "Your order shipped at 3 AM").
    • Legacy Systems: Integrate scheduling into existing PHP/Resque-based architectures without rewrites.

When to Consider This Package

  • Adopt If:

    • Your stack already uses PHP-Resque (or is open to adopting it) for background jobs.
    • You need simple, cron-free scheduling (e.g., no server access for cron jobs, or cron is unreliable).
    • Jobs require delayed execution (e.g., "run in 1 hour," "run at 2 AM daily") without complex recurrence rules.
    • Your team prefers MIT-licensed, community-supported tools over vendor lock-in.
    • You’re not using Laravel’s built-in queue system (this is a Resque-specific solution).
  • Look Elsewhere If:

    • You’re using Laravel’s native queue system (consider laravel-schedule or spatie/laravel-schedule-delayed instead).
    • You need advanced scheduling (e.g., time zones, complex cron expressions, or distributed locking). Tools like Sidekiq or Amazon SQS + EventBridge may fit better.
    • Your jobs require persistent retries or priority queues (Resque’s simplicity may be limiting).
    • You’re in a polyglot environment (e.g., mixing PHP with Node.js/Python) and need cross-language scheduling.

How to Pitch It (Stakeholders)

For Executives: "This package lets us schedule background jobs—like sending emails or running reports—at specific times without relying on cron or overloading our servers. It’s a lightweight, open-source solution that integrates with our existing PHP-Resque setup, reducing costs by running non-critical tasks during off-peak hours. For example, we could automate nightly data processing without hiring extra DevOps support. It’s a low-risk way to add reliability to our job workflows, with minimal dev effort."

For Engineering: *"php-resque-scheduler is a drop-in extension for Resque that adds delayed/job scheduling. Key benefits:

  • No cron dependency: Jobs trigger via Resque workers, not server cron.
  • Simple API: Schedule once or repeat jobs with basic syntax (e.g., Resque::enqueueIn(1 hour, 'job', $data)).
  • MIT license: No licensing costs or vendor lock-in.
  • Battle-tested: 270+ stars, mirrors Ruby’s popular resque-scheduler. Tradeoff: Less feature-rich than Sidekiq, but perfect for our current needs. Let’s prototype it for [specific use case] before committing."*

For Developers: *"This is essentially ‘cron for Resque’—if you’ve used Ruby’s resque-scheduler, this is the PHP port. To integrate:

  1. Install via Composer: composer require chrisboulton/php-resque-scheduler.
  2. Configure Redis (Resque’s backend) and set up a scheduler worker.
  3. Schedule jobs with Resque::enqueueIn() or Resque::enqueueAt(). Example: Schedule a ‘send_welcome_email’ job to run in 5 minutes:
Resque::enqueueIn(300, 'send_welcome_email', ['user_id' => 123]);

Pro tip: Pair with Resque’s web UI to monitor scheduled jobs."*

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.
sentix/ai-chatbot
terminal42/code-quality-tools
codifyo/ts-generator-bundle
testo/fiber
mintobit/jobqueue
a4sex/maintenance-bundle
a4sex/entity-date-update
a4sex/client-identifier
a4sex/base-utilites
a4sex/key-value-storage
a4sex/micro-status
chilldev/dependency-injection-extra
datinglibre/datinglibre-app-api
biberltd/corebundle
bricre/symfony-bundle-test
biberltd/logbundle
dominium/http-adapter-bundle
dominium/google-analytics
a4sex/auto-clean-entity
christhompsontldr/laravel-inky