Add id 'pool' for connetion pool

This commit is contained in:
Omar Roth 2018-01-19 03:46:29 +00:00
parent c36b22a16d
commit 61e3b47210

View File

@ -21,27 +21,26 @@ 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 = "RoEEDKwzNBw" id = Deque.new(50,"0xjKNDMgE54")
loop do while true
client = get_client client = get_client
time = Time.now time = Time.now
begin begin
video = get_video(id) video = get_video(id[rand(id.size)], false)
rvs = [] of Hash(String, String)
video.info["rvs"].split(",").each do |rv|
rvs << HTTP::Params.parse(rv).to_h
end
rvs.each do |rv|
id << rv["id"]
end
puts "#{Time.now} 200 GET #{elapsed_text(Time.now - time)}"
rescue ex rescue ex
id = "RoEEDKwzNBw"
next next
ensure
POOL << client
end end
rvs = [] of Hash(String, String)
video.info["rvs"].split(",").each do |rv|
rvs << HTTP::Params.parse(rv).to_h
end
id = rvs[rand(rvs.size)]["id"]
puts "#{Time.now} 200 GET #{id} #{elapsed_text(Time.now - time)}"
POOL << client
end end
end end