Sha256: 6e1f20abfe7ef243b19329f62609284baa379b0c5ba8424251efaf6a60fee8b8
Contents?: true
Size: 901 Bytes
Versions: 1
Compression:
Stored size: 901 Bytes
Contents
require 'delayed_job' module Delayed module Workless module Scaler class Base def self.jobs Delayed::Job.all(:conditions => { :failed_at => nil }) end def self.calculate_num_workers num_workers = self.workers if num_workers.class == Fixnum job_count = self.jobs.count if job_count > 500 return 4 unless num_workers > 3 elsif job_count > 200 return 3 unless num_workers > 2 elsif job_count > 50 return 2 unless num_workers > 1 elsif job_count > 0 return 1 unless num_workers > 0 end end end end module HerokuClient def client @client ||= ::Heroku::Client.new(ENV['HEROKU_USER'], ENV['HEROKU_PASSWORD']) end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
rcarvalho-workless-1.0.2.1 | lib/workless/scalers/base.rb |