Randomly refresh HTTP clients

This commit is contained in:
Omar Roth 2018-01-19 18:51:57 +00:00
parent 61e3b47210
commit f77dcb7f9b

View File

@ -21,9 +21,12 @@ end
# Refresh all the connections in the pool by crawling recommended # Refresh all the connections in the pool by crawling recommended
spawn do spawn do
# Arbitrary start value # Arbitrary start value
id = Deque.new(50,"0xjKNDMgE54") id = Deque.new(50, "0xjKNDMgE54")
while true while true
client = get_client client = get_client
if rand(30) > 1
client = HTTP::Client.new(URL, CONTEXT)
end
time = Time.now time = Time.now
begin begin
@ -33,7 +36,7 @@ spawn do
rvs << HTTP::Params.parse(rv).to_h rvs << HTTP::Params.parse(rv).to_h
end end
rvs.each do |rv| rvs.each do |rv|
id << rv["id"] id << rv["id"]
end end
puts "#{Time.now} 200 GET #{elapsed_text(Time.now - time)}" puts "#{Time.now} 200 GET #{elapsed_text(Time.now - time)}"
rescue ex rescue ex