Сервер убивает PHP скрипт по таймауту. Что делать?
Попросили написать довольно сложный "скрипт" на ПХП, а я нефига не бэкэндщик.
Так человек-затычка. Где брешь - там моя плешь.
Ну запилил я его, он должен, просто обязан запускаться по урлу и долго зараза выполняться ( 2-3-4 часа ), но редко.
Однако сервер убивает его исполнение через 10-12 мин, там таймаут какой-то, а менять его низзя.
Сначала все было еще хуже, но я заставил сервер печатать мне отчет о том как там дела переполняя нафиг буфер (только так получалось) и он мне выплевывает строчку в браузере.
Но все равно мрет через 10-12 мин.
А скрипт короче лезет во всякие темные места со своими запросами качает по апи всякую муть, сортирует её бешено во всех позах, а потом неистово отправляет то что получилось в другое место, попутно сохраняет инфу о проделанном ( это не надо было, но так как все цука падало каждые 12 мин, то пришлось искать способы сохранять прогресс, чтоб каждый раз с нуля не начинать ).
Я вообще не бум бум, памагите!
Если можно с простеньким примером где какая-то херня может выполняться очень долго и не дохнуть.
Спасибо!
А да, слова еще всякие, значения которых я не знаю, но они короче присутствуют в этом проекте века:
php 5.6, apache, nginx
И да, это не нехватка памяти, еслишо.
С памятью все ок, это именно таймаут.
а вообще я понимаю, что это самый простой выход из ситуации, но мне стало интересно как такие вещи делают серьезные люди.
просто бэкенд для меня загадка. и мне вдруг стало интересно, пофиг на скрипт, просто для себя.
я не бэкэндщик, но думаю, что таймаут придумали, чтоб какой-нибудь бесконечный цикл не зашел темной ночью на сервер в гости.
т.е. мне это кажется плохой практикой, нет?
ila10965: да всме правильно но во первых вам никто не запрещяет этот тайм аут увелиить не до бесконечности. Ну а во вторых элементарно делать или лок файл, или ждать завершения процесса.
Рекомендую впредь не реализовывать такие массивные скрипты на php, т.к. его идея абсолютно не в жутких демонах.
Серьёзные люди используют под подходящие задачи подходящие языки.
Взгляните в сторону лаконичного Python и ему подобных - учится быстро, особенно после пыха (нет, я про php).