De faire plusieurs requêtes HTTP de manière asynchrone

require 'net/http'

urls = [
  {'link' => 'http://www.google.com/'},
  {'link' => 'http://www.yandex.ru/'},
  {'link' => 'http://www.baidu.com/'}
]

urls.each do |u|
  u['content'] = Net::HTTP.get( URI.parse(u['link']) )
end

print urls

Ce code fonctionne en synchronisation style. Première, deuxième, troisième. Je voudrais envoyer toutes les demandes de manière asynchrone et d'impression urls après tout est.

Quelle est la meilleure façon de le faire? Est la Fibre adapté pour cela?

OriginalL'auteur |