Вопрос: |
Здравствуйте.
Уже не первый раз возникает ошибка "PHP*: * *** *" при работе крона. У меня не было точной уверенности в какой момент это происходит. Обращалась к админам сервера, с которого копируются фотографии. Сейчас обращаюсь к Вам. Если смотреть по коду, то ошибка возникла в момент записи на сервер (эрахост).
Вот сообщение об ошибке:
[**-*-**** **:**:** *PHP*: * *** *.*admin*cron*cron_sima_photo_****.php* ***
Если посмотреть в папке, то видно, что файл сформирован (название, открыт для записи), но данные в него не записаны. Вот файл: ftp://*@**.**.*.**/*.**/******-*.* = размер * байт.
Пожалуйста, проверьте со своей стороны в связи с чем происходит такая задержка.
*: перед этим все работало прекрасно , было скачано чуть больше ** тыс файлов, а должно быть гораздо больше. |
Ответ: |
здравствуйте
лимиты работы скриптов - **с
диск у вас не заполнен
запустите скрипт повторно |
Вопрос: |
Да он работает бог весть сколько времени и обрывается непредсказуемо. Мне нужна стабильность в работе.
При лимиты работы - знаю. Попросила найти причину, чтобы исправить.
Прекращает писать в какой-то момент на сервер. |
Вопрос: |
и вот и вопрос: в связи с чем это происходит? |
Вопрос: |
Скрипт ***% рабочий. |
Ответ: |
в ошибке указана прична - превышение лимита времени выполнения |
Вопрос: |
в том то и дело, что ошибка возникает в момент записи на диск сервера! В этом-то и проблема. Почему вдруг возникает эта пауза? |
Ответ: |
в какой момент записи? как вы определили что это именно момент записи? а геде до этого файл был? |
Вопрос: |
начну сначала:
*. запускается крон, который копирует файлы на сервер
*. этот крон прекрасно отработал на ** с лишним тысяч файлов, а потом отвалился по ошибке
*. номер строки ошибки указывает, что отвалился в момент записи на сервер
В связи с этим обратилась к Вам, чтобы проверить в связи с чем произошло превышение интервала. По логам, доступным мне, не видно этой информации. Только что крон начал работать. |
Ответ: |
крон это просто будильник, он не запускается, он запускает. сам крон абсолютно ничего не делает кроме выполнения заданой Вами команды
крон не отрабатывает, отрабатывает скрипт, проблему нужно искать в скрипте . что значит "отработал ** тысяч файлов" ? что конкретно это означает?
а где до этого были файлы?
тк.к изменений никаких не делалось, проблема скорее всго не имеет отношения к серверу а связана с источником Ваших картинок, возможно Вам блокировали доступ к ним |
Вопрос: |
Блин, ну неужели Вы думаете, что я не знаю что такое крон?
Давайте напишу еще раз.
*. Есть скрипт. Который запускается по расписанию (ни разу не доработал до конца). Этот скрипт копирует фотографии ОФИЦИАЛЬНО с сайта симы к нам. Работает он долго, поэтому просто "запустить заново" - это не решение.
*. Ошибка возникает постоянно и первым делом я обратилась именно к поставщику файлов. Один раз они исправили. Теперь у них все ровно. Но ошибка никуда не делась.
*. Ошибка, о которой записано в error_log, обращает внимание на строку ***. На это строке (смотрю в код) происходит именно физическая уже запись данных в файл.
*. что касается "отработал на ** тысяч"... Этот скрипт скачал на сервер ** тысяч фотографий. В общей сложности их порядка *** тыс.
Вывод:
*. скрипт рабочий
*. проблема происходит или при "отдаче" файла или при его записи.
*. Про отдачу связалась и поговорила с компанией.
*. теперь обратилась к Вам, чтобы проверили почему "застревает" на записи.
У Вас же есть логи, к которым у меня нет доступа. По ним Вы что-то можете проверить и сказать? |
Ответ: |
лимит на работу скрипта - ** сек. скрипт не может рабоать бесконечно долго
где были фотогорафии ДО записи? они же не в воздухе висели?
сократите число файлов скачиваемых за раз и проверьет работу скрипта |
Вопрос: |
Блиин, ну это же отписка чистой воды.
Как уже писала:
*. фотография берется с чужого сервера и записывается на сервер эрахост. Что Вы имеете в виду под "где были...?"
*. За один проход берется только * фотография.
*. Скрипт ***% рабочий, с его помощью скачано на сервер ** тыс файлов. Работал более * часов. |
Ответ: |
вы же говорите что не записывается, у Вас ошибка в процессе записи.
если за один проход берется одна фотография то при чем тут ***** файлов и момент записи.
на сервер еабсолютно ничего не менялось если крипт работал то он и должен работать, только он не должен рабоатть более *х часов, лимит выполнения ** сек |
Вопрос: |
Вы издеваетесь? Повторюсь.
*. Есть скрипт. Который запускается по расписанию. Этот скрипт ОФИЦИАЛЬНО копирует фотографии с сайта симы к нам. Работает он долго, поэтому просто "запустить заново" - это не решение.
*. В течение своей работы (более * часов, запуск скрипта с помощью планировщика задач CRON) он скачал на сервер ** *** файлов.
*. Для скачивания берется ОДИН файл на чужом сервере и сохраняется на сервере эрахост. Операция повторяется до тех пор, пока не будут скачаны все фотографии или "не отвалится" (как в нашем случае).
*. При возникновении ошибки вашим сервером сформирован файл.
В нем написано: [**-*-**** **:**:** *PHP*: * *** *.*admin*cron*cron_sima_photo_****.php* ***
В коде видно, что на этой строчке идет именно запись полученных данных в файл. Но, по какой-то причине, делается это оооочень долго и наступает таймаут для этой конкретной операции.
*: прочитайте, плиз, "для себя" про ** сек лимита скрипта при запуске его через крон и через браузер. |
Вопрос: |
Да еще момент: скрипт планировщиком запускается один раз и он работает более трех часов без перерыва. |
Ответ: |
из вашего описания не ясно в какой файл ведется запись. запись прерывается на каком то конкретном файле , на каком то конкретном количестве или в строго определенное время?
скрипт не должен рабоатть более ** сек. * часа работы скрипта никак ен может быть гарантировано |
Вопрос: |
Вы будете со мной спорить по поводу работы скрипта с запуском через крон?
Зайдите в папку ftp://*@**.**.*.**/*.** и в папку ftp://*@**.**.*.**/*.**
Они формируются работой скрипта, который однократно запускается через CRON, Первый файл записан в **-** (папка **), последний в **-** (папка **).
Как я уже говорила: почитайте.... ** сек - это ограничение на запуск через браузер. Не через крон. Если следовать Вашей логике, то ни один крупномасшабный скрипт просто не смог бы отработать полностью. Им мало ** секунд. |
Вопрос: |
Короче, я поняла, что в этом вопросе Вы не можете помочь.
Тикет закрыт. Выводы сделаны. |
Ответ: |
все верно, лимит работы скриптов хоть через cron хоть через броузер - ** сек. не * часа , а ** сек. это н логика а настройки php которые никогда не менялись. , повторяем, на хостинге настройки сервера НЕ менялись! скриптам запрезено рабоатть столь долгое время.
&*; |