Многопоточный чекер сайтов
Есть 10 000 адресов сайтов. Необходимо в многопоточном режиме организовать опрос этих сайтов методом HEAD и получить заголовок ответа сервера по каждому URL. Т.е. 200, 404, 504 и т.п.
Делаем селект из базы mysql по определенным параметрам. Получаем список доменов с параметрами некими.
Создаем поток:
В зависимости от неких параметров из выборки генерируем юзер-агент и реферер для конкретного url и делаем коннект к нему и спрашиваем ответ сервера (HEAD). Ждем ответа 5 секунд. Если в течение 5 секунд ответа не получили, то ничего не делаем.
Если ответ пришел, то полученный код ответа (200, 404, 504 и т.п.) записываем в БД
Закрываем поток.
и так N потоков одновременно - все сайты из первоначальной выборки.
Подробнее исполнителю.
Требования:
- по минимуму используемых ресурсов
- максимально возможное число потоков для сервера с 1Гб оперативки (при условии что кроме этого скрипта там ничего нет)
- минимально возможное время завершения работы по опросу всех сайтов.
- не Windows. Работать будет на сервере.
В комментариях помимо стоимости и сроков ОБЯЗАТЕЛЬНО (это влияет на выбор) укажите пожалуйста:
- язык, на котором Вы это можете написать (можно: perl или C)
- количество потоков, которое можно будет реализовать одновременно
- планируемое время опроса 10 000 сайтов при условии, что каждый из них ответит 200 ОК в течение 1 секунды после отправки запроса.