Тайм-аут включает в себя функцию, которая фактически выполняет работу, чтобы гарантировать, что если сервер не ответит в течение определенного времени, код выдаст ошибку и остановит выполнение.
Я подозреваю, что вы видите, что серверу требуется некоторое время, чтобы ответить. Вам следует как-то взглянуть на кеширование ответа.
Например, используя memcached (псевдокод)
require 'dalli'
require 'open-uri'
DALLI = Dalli.client.new
class PopularVideos
def self.get
result = []
unless result = DALLI.get("videos_#{Date.today.to_s}")
doc = open("http://youtube/url")
result = parse_videos(doc) # parse the doc somehow
DALLI.set("videos_#{Date.today.to_s}", result)
end
result
end
end
PopularVideos.get # calls your expensive parsing script once
PopularVideos.get # gets the result from memcached for the rest of the day