Завершение работы php-скрипта, висит в процессах

humbert
На сайте с 16.03.2006
Offline
540
1397

Странно, хотя и понятно, что я не совсем все умею и знаю, но заметил такую штуку - запускаю скрипт php, тот выполняет какое-то условие и командой exit; как бы прекращает работу. В скрипте ничего необычного не выполняется, запрос к БД и все.

Так вот, заметил, что после exit; в процессах все равно висит этот скрипт, смотрю по его pid. Странно как-то. Раньше не задумывался, а сегодня вдруг заметил это. Памяти не жрет, но в процессах висит.

Парсинг прайс-листов, наполнение интернет-магазина товаром. (https://humbert.ru) Любая CMS (Битрикс, OpenCart, Prestashop и даже Woo Commerce )
LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#1

А вы уверены, что exit срабатывает? Также смотрите, где?

✅ Мой Телеграм канал по SEO, оптимизации сайтов и серверов: https://t.me/leonidukgLIVE ✅ Качественное и рабочее размещение SEO статей СНГ и Бурж: https://getmanylinks.ru/ ✅ Настройка и оптимизация серверов https://getmanyspeed.ru/
humbert
На сайте с 16.03.2006
Offline
540
#2

exit срабатывает - скрипт после выполнения данной команды ничего не делает, работа завершена.

Уточню, получаю PID скрипта, завершаю работу командой exit - гляжу в процессы, висит процесс с данным PID и Command /usr/sbin/httpd

Мне бы хотелось чтобы в списке процессов не висел данный PID после окончания работы скрипта

LEOnidUKG
На сайте с 25.11.2006
Offline
1774
#3

У вас апатч?

В server-status точно там ваш скрипт висит на исполнение? Просто апатч может под одним pid выполнять много задач

humbert
На сайте с 16.03.2006
Offline
540
#4

Апач, да

Я не силен в администрировании, как и в программировании, поэтому прошу уточнить о каком service status идет речь? service httpd status?

S
На сайте с 13.10.2014
Offline
171
#5

Так может php висит в памяти как сервис. IIS и апач такое позволяют.

B
На сайте с 21.08.2017
Offline
28
#6

Прав silicoid, такое имеет право на жизнь, а также еще под этимже пидом может бежать уже другой процесс.

humbert
На сайте с 16.03.2006
Offline
540
#7

Не, насколько я понял, под этим PID висит апач, который запускает php, т.е. php завершает работу, а apache продолжает висеть.

Не нашел как убивать apache при завершении работы php, ну да ладно. При запуске скрипта в консоли или через крон все нормально, а мне для крона надо было знать PID

B
На сайте с 21.08.2017
Offline
28
#8

humbert, если через крон то в /dev/null отсылаете?

Припоминаю какието траблы подобные сейчас.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий