Мое приложение проверяет количество доменов, чтобы убедиться, что они действительны (около 100). У меня есть следующий код для проверки одного домена:
def self.test_url uri, limit = 10
if limit == 0
return get_error_messages("001")
end
begin
url = URI.parse(uri)
response = Net::HTTP.start(url.host, url.port).request_head('/')
rescue SocketError => e
return get_error_messages("002")
end
case response
when Net::HTTPRedirection then test_url(response['location'], limit - 1)
else return get_error_messages(response.code)
end
end
Код проверяет код ответа с учетом перенаправлений. Это отлично работает. Единственная проблема, которую я имею, это когда я помещаю это в цикл, я хочу, чтобы он работал параллельно. Поэтому мне не нужно ждать ответа домена 1, прежде чем я смогу запросить домен 2.
Я справился с этим в PHP, используя curl_multi для параллельного выполнения запросов. Есть ли нечто подобное, что я могу сделать в Rails?