secret
Created

  • Download Gist
threaded.rb
Ruby
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
require 'net/http'
require 'benchmark'
 
count = 5
 
def fire_request
Net::HTTP.get_print 'm.onkey.org', '/'
end
 
threaded = Benchmark.realtime do
threads = []
 
count.times do
threads << Thread.new { fire_request }
end
 
threads.each {|t| t.join }
end
 
sequential = Benchmark.realtime do
count.times { fire_request }
end
 
puts "Multithreaded : #{threaded} seconds"
puts " Sequential : #{sequential} seconds"
 
# Multithreaded : 1.64077377319336 seconds
# Sequential : 3.87826609611511 seconds

Please sign in to comment on this gist.

Something went wrong with that request. Please try again.