100% Open Source: Apache License, v2.0
Monitoring:
  • Web Interface.
  • See all running jobs.
  • View current status.
Running
Priority based processing.
  • Process jobs in business priority order.
  • Dynamically change job priority to push through business critical jobs.
Running
Cron replacement. Running
Familiar interface.
  • Similar to ActiveRecord.
ImportJob.create!(
  file_name: "file.csv",
  priority:  5
)
Implement behavior.
  • #perform
class MyJob < RocketJob::Job
  def perform
    # Implement behavior here ...
  end
end
Fields, with types:
  • Array
  • Date
  • Float
  • Hash
  • Integer
  • Range
  • Regexp
  • String
  • Time
  • Etc.
class Job < RocketJob::Job
  field :login, String
  field :count, Integer
  
  def perform
    # Implement behavior here ...
  end
end
Validations:
class Job < RocketJob::Job
  field :login, String
  field :count, Integer

  def perform
    # Implement behavior here ...
  end
  
  validates_presence_of :login
  validates :count, inclusion: 1..100
end
Callbacks:
  • Extensive callback hooks to customize job processing and behavior.
class MyJob < RocketJob::Job
  after_start :email_started

  def perform
    # Implement behavior here ...
  end

  # Send an email when the job starts
  def email_started
    MyJobMailer.started(self).deliver_now
  end
end
Batch Jobs:
  • Use many workers to process a single job at the same time.
  • Process large files by breaking it up into pieces that can be processed concurrently across all available workers.
class ImportPricesJob < RocketJob::Job
  include RocketJob::Batch

  
  def perform(row)
    # Each row is a Hash
    # Load into DB via Active Record
    Price.create!(row)
  end
end
# Upload the file into the Batch Job for processing
job = ImportPricesJob.new
job.upload("prices.csv")
job.save!
Trigger Jobs when new files arrive:
  • Dirmon monitors directories for new files.
  • Kicks off a Rocket Job to process the file.
Folder
High Performance:
  • Over 1,000 jobs per second on a single server.
Folder
Reliable:
  • Reliably process and track every job.
Folder
Scalable:
  • Scales from a single worker to thousands of workers across hundreds of servers.
Folder Folder Folder
High Performance Metrics and Logging:
  • File
  • Bugsnag
  • Apache Kafka
  • ElasticSearch
  • MongoDB
  • NewRelic
  • Splunk
  • Syslog (TCP, UDP, & local)
  • Etc.
Folder
Fully supports and integrates with Rails. Rails