Skip to content

Instantly share code, notes, and snippets.

@bkeepers
Created December 1, 2010 18:49
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save bkeepers/723993 to your computer and use it in GitHub Desktop.
Save bkeepers/723993 to your computer and use it in GitHub Desktop.
delayed_job benchmarks with multiple workers
require 'spec/spec_helper'
require 'logger'
require 'benchmark'
workers = 4
puts "#{workers} workers"
Benchmark.bm(10) do |x|
Delayed::Job.delete_all
(1000...10001).step(500).each do |n|
n.times { "foo".delay.length }
x.report("#{n} jobs") do
Delayed::Worker.backend.before_fork
workers.times do
fork do
Delayed::Worker.backend.after_fork
Delayed::Worker.new(:quiet => true).work_off(n)
end
end
Process.waitall
end
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment