Проблема, скорее всего, архитектурная.
Если распараллелить запросы, то не понятно, что делать если обнаружилось несколько «годных» урлов.
Я бы сделал отдельный сервис по проверке адресов, который бы ходил по ним в несколько потоков, а годные собирал в отдельную коллекцию, откуда бы предоставлял по требованию и с минимальной задержкой.