Это общий дизайн вопроса о том, как сделать веб-приложение, которое будет получать большое количество загруженных данных, обрабатывать их и возвращать результат, все без страшного вращающегося пляжного шара в течение 5 минут или возможного таймаута HTTP.
Здесь требования:
- создать веб-форму, где вы можете загрузить CSV файл, содержащий список URL-адресов
- когда пользователь нажимает кнопку "отправить", сервер извлекает файл и проверяет каждый URL-адрес, чтобы узнать, жив ли он и какой тег заголовка страницы.
- результатом является загружаемый CSV файл, содержащий URL-адрес, а результат HTTP-код
- входной CSV может быть очень большим ( > 100000 строк), поэтому процесс выборки может занять 5-30 минут.
Мое решение до сих пор заключается в том, что на клиентском сайте есть вращающийся цикл javascript, который запрашивает сервер каждую секунду, чтобы определить общий ход работы. Для меня это кажется неуклюжим, и я не решаюсь принять это как лучшее решение.
Я использую perl, набор шаблонов и jquery, но любое решение, использующее любую веб-технологию, будет приемлемым.
изменить Пример возможного решения в этом вопросе: Как реализовать базовый "длинный опрос" ?