Задать вопрос
@zzmaster

Зависает процесс php из командной строки, что сделать?

Заметил однажды такую ситуацию, что крон-задание, php скрипт, у которого стоит
set_time_limit(60)

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

Происходит это на Centos 6.
  • Вопрос задан
  • 315 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Пригласить эксперта
Ответы на вопрос 2
skobkin
@skobkin
Гентушник, разработчик на PHP и Symfony.
Можно попробовать выполнить его с дебаггером (xdebug) или профайлером и посмотреть на чём он залипает.
Можно снаружи подцепиться к нему, например, strace и посмотреть какие системные вызовы он делает.
Ответ написан
@rPman
в крон задании сохраняйте pid процесса в файл (запускайте через & и сразу берите pid из переменной $!), а соответственно перед этим, убиваете процесс с pid из этого файла (если он есть).
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы