Начинать интенсивный, длительный процесс, подобный этому, с веб-страницы почти никогда не бывает хорошей идеей. Причин много, но главные из них:
1) Если в браузере истекло время ожидания (это ваш сценарий), собранные вами данные могут не отображаться.
2) Что произойдет, если вы нажмете Обновить в браузере? Будет ли в этот момент, чтобы начать весь процесс снова? это легкая цель для злоумышленника, если он хочет связать все ресурсы вашего сервера.
3) Действительно ли данные, которые вы сканируете, изменяются до такой степени, что вам нужно сканировать в режиме реального времени? В 99% случаев было бы точно так же выполнено фоновое синхронизированное задание, выполняющее сканирование, и ваш интерфейс просто отображал содержимое базы данных.
Я бы настоятельно рекомендовал вам пересмотреть свою стратегию сканирования на что-то более контролируемое и стабильное.