Resque is an open source scheduler with multiple queues support

Resque Free Message Queue Software

Redis-backed queuing system for background processing.

Resque is an open source queueing system backed by Redis. It creates background jobs, places them on multiple queues, and schedules jobs to process later.

Resque is a Redis-backed simple and open source queuing system for background processing. Background processing is becoming more important as web applications integrate with 3rd Party APIs, run long running requests, perform external data Processing and emails delivery to keep your response times down. Today we are going to cover Resque open source scheduler with Redis to run your resque jobs. Resque simple job runner is widely used as it has a variety of options for configurations and customizations.

Resque job scheduling tool is used for creating background jobs, placing them on multiple queues and then schedule them to happen later. Background jobs can be any ruby class or module which responds the perform method to run process in background. Resque-scheduler is an extension to Resque to add support for queueing system. Resque is inspired by DelayedJob to a great extent. Resque is a distributed job scheduler with 8.9K GitHub stars and 1.6K GitHub forks. If you need multiple queues for your application then Resque open source job scheduler is probably a better choice.

System Requirements

The following key dependency packages are required to install the Resque open source scheduler:

  • Ruby: 2.3.0
  • Redis: 3.0+
  • Rails: 3.x+
  • RubyMine editor
  • Git

Features

Some of the great features of Resque open source task scheduler are listed below:

  • Supports for multiple queues
  • Administration interface to monitor workers
  • Workers are resilient to memory leaks
  • Create, query and process jobs
  • Monitoring with monit
  • Monitoring of queues, jobs and workers
  • Active Job support
  • Priorities
  • Distributed processing
  • Using Redis backend
  • Sinatra-based front end to track queues
  • Queues are processed by workers
  • Persistent queues
  • Open source library

Installation

Install Resque on Ubuntu

Resque open source batch scheduler is simple and easy to get started software. First install the necessary dependencies packages. If you use Debian based distro such as Ubuntu, run below commands in terminal to install and automatically start Redis with Resque open source scheduler on boot:

sudo apt install redis
sudo systemctl enable redis

Next, install resque gem in your project directory or add resque gem to your Gemfile:

gem 'resque'

Now, install it with Bundler:

bundle install

In your Rakefile, or some other file in lib/tasks (ex: lib/tasks/resque.rake), load the resque rake tasks:

require 'resque'
require 'resque/tasks'

Include below line if you want your workers to have access to your application:

require 'your/app'

Resque batch job scheduler workers are rake tasks that run forever. You can starting a worker:

QUEUE=* rake resque:work

You can start multiple workers with:

COUNT=2 QUEUE=* rake resque:workers

If you want your workers to work off of every queue, including new queues created on the fly, you can use:

QUEUE=* rake resque:work

If you’ve installed Resque as a gem running the front end then standalone is easy to run:

resque-web

Press ctrl-c to kill background process all workers. Resque workers support basic logging to STDOUT. You can control the logging threshold in config/initializers/resque.rb

Resque.logger.level = Logger::DEBUG

Now start your application:

rails server

Congratulations! You have successfully installed Resque open source batch scheduler on linux cloud server. Enjoy!

Explore

In this article we discussed about Resque open source job scheduler. To learn about other open source job scheduling tools list, please visit following page: