Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Долго работающий скрипт


Автор: brother79 21.10.2009, 05:02
Здравствуйте. Есть задача, в форме добавляю урл, и отправляю его на сервер, далее надо на сервере по этому урлу отсканировать и обработать страницы, и записать нужное в базу.

Проблема в том, как лучше реализовать этот длительный процесс. Если просто тупо выполнять скрипт, после посылки на сервер браузер долго думает, а потом в итоге выдаёт результат. Если на хостинге стоит ограничение по времени скрипта - то он сваливается. При этом в любом случае на экране в браузере ничего не показывается пока скрипт не отработает. 

Как лучше реализовать данную задачу, чтобы можно было в браузере наблюдать процент выполнения скрипта и соответственно по завершению увидеть нужную картинку? 

Автор: MoLeX 21.10.2009, 09:04
Цитата(brother79 @  21.10.2009,  05:02 Найти цитируемый пост)
в форме добавляю урл, и отправляю его на сервер, далее надо на сервере по этому урлу отсканировать и обработать страницы, и записать нужное в базу

урл записывай в БД, раз в N минут вызывай скрипт по крону который будет выполнять свою работу

Автор: lelik133 21.10.2009, 09:47
Цитата

урл записывай в БД, раз в N минут вызывай скрипт по крону который будет выполнять свою работу


плюс раз в  n минут/секунд, дергай ajax`ом скрипт  для проверки завершился разбор или нет. Например в той же таблице завести поле endTask и ставить в него по-умолчанию 0, а после разбора url`а 1. Проверяющий скрипт когда в базе будет 1, выдаст необходимое в браузер.

С процентами сложнее, можно конечно вместо endTask завести поле procentTask и писать туда число от 0 до 100, но как считать этот самый процент достоверно большой вопрос, что есть 5% а что 63% ?

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)