WEB форумы на jedi
[Форум] [Помощь] [Поиск] [Выйти]
Добро пожаловать, [info]User

WEB форумы на jedi [ПОИСК] [Архив до 03.2006]

Тема Fatal error: Maximum execution time... К предыдущему сообщению На следующее сообщение Программирование

Отправил MULTFILM EJOV в 04:51 15.05.2005[Ответить]
Fatal error: Maximum execution time of 30 seconds exceeded in [...] on line [...]

Как сделать так, чтобы выполнение PHP-скрипта не прерывалось через 30 секунд?
В скрипте идёт масштабный сбор данных, который может продолжаться и дольше. Время - не главное. Главное - выполнение до конца.


Отправил lyonchik в 11:24 15.05.2005[Ответить]
set_time_limit(0);

не сработает если php в safe mode.


Отправил MULTFILM EJOV в 13:52 15.05.2005[Ответить]
Вот спасибо


Отправил mlevin в 07:10 04.10.2005[Ответить]
2 Multfiltm: Как может быть "время не важное" ?! Это же апачу серпом по  balls.

Дай мне твой сервер, где твой скрипт работает по неважно сколько времени. Через полчаса можешь звонить в техсапорт хостинга, чтоб прибивали все, до сих пор работающие, процессы httpd.

Блин, это ж надо так глубоко не понимать принципы Web-апликейшен!

Михаил.

PS. Хм. а может я не прав? Может это у тебя the Queue Manger такой, он должен бесконечно работать, и он расставляет все долгоиграющие запросы по очередям, выдаёт JavaScript-enabled окошечки юзерам, с estimated running time и просьбой подождать до завтра? Тогда извини.


Отправил NightWing в 10:21 04.10.2005[Ответить]
Авторизация запуска долгоиграющего процесса. Хотя в asp.net я бы просто поток новый запустил или написал небольшой сервис и связал ремоутингом для реализации отмашки на запуск. Но виндовс ОС отсталая, это мы уже выясняли... :)


Отправил CAHbKA в 12:20 04.10.2005[Ответить]
никакого серпа, как push организовать и всё


Отправил pinetree в 23:03 06.10.2005[Ответить]
как вариант для php - форкнуть процесс pcntl_fork();

более извращеннее обрабатывать процесс поэтапно (например по 100 записей из бд) и перегружать страницу meta refresh или javascript`ом каждые N секунд..


Отправил Song в 00:03 07.10.2005[Ответить]
>> В скрипте идёт масштабный сбор данных, который может продолжаться и дольше. Время - не главное. Главное - выполнение до конца.

так ведь эти данные ещё и показать потом надо?


Отправил AgentD22 в 00:18 07.10.2005[Ответить]
Может быть так?
===Begin of .htaccess===
php_value  max_execution_time 0
===End of .htaccess===


Отправил mlevin в 18:24 09.10.2005[Ответить]
Дорогие товарищи.

Вы опять за старое.

Если стоит условие, что "масштабный сбор данных" должен работать независимо долго, то я повторяю: не для вебморды это задача.

Правильнее надо понимать, что можно а что нельзя делать в web-application.

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

А вы прям как дети,.. :(


Отправил AgentD22 в 09:48 10.10.2005[Ответить]
Это всё конечно правильно, но когда надо увеличить время до 40 секунд... человек заморачиваться таким не особо хочет.


Отправил Пaшкa в 12:45 10.10.2005[Ответить]
> А морда должна только показывать.

Морда должна быть удобной, и иногда через неё желательно, чтобы можно было делать тяжелые вещи. К примеру отпарсить выгрузку базы данных нажатием одно


Отправил Пaшкa в 12:45 10.10.2005[Ответить]
> А морда должна только показывать.

Морда должна быть удобной, и иногда через неё желательно, чтобы можно было делать тяжелые вещи. К примеру отпарсить выгрузку базы данных нажатием одной кнопки, а не мучительными коннектами через неудобные вещи вроде putty.


Отправил CAHbKA в 19:47 10.10.2005[Ответить]
терминал это концептуально :)
красоту и удобство морд это не отменяет, как и морды не отменяют правильные вещи :)

раз уж отошли от оригинального вопроса (думается он закрыт уже ;) хотелось бы понять, какой криминал в тяжелом или долгом процессе апача? какой-то вывод на экран категорически не подразумевается в процессе или наоборот подразумеваются десятки тысяч долго-тяжелых апаче-деток? или тут суть в "звонить в техсапорт", т.е. подразумевается жестковатое распределение ресурсов по хостерам?


Отправил MULTFILM EJOV в 00:12 12.10.2005[Ответить]
Тема действительно давно закрыта. Первоначальное решение меня вполне устроило. Тем более, что "не успевал" Апач в комплекте  Денвера на локалхосте. Нормальный-* сервер, хоть и тоже Апачевский, всё замечательно делал за считанные секунды. Сами понимаете, что-то подобное дома ставить не реально. Тем более, только лишь на пол года.

*- здесь - отдельная машина, выделенная под веб-сервер.