На моем сервере Linux у меня есть процесс PHP, который занимает слишком много времени (несколько дней) для завершения. Сценарий в основном разбивает большой файл данных на маленькие порции и записывает в соответствующие файлы в файловую систему CIFS (общий сетевой ресурс). Я пытаюсь устранить неполадки, связанные с использованием strace для соответствующего PID, и вижу следующее, исходя из которого кажется, что большая часть времени используется в записях:
% time seconds usecs/call calls errors syscall
------ ----------- ----------- --------- --------- ----------------
89.88 17.722953 4 4854316 write
10.07 1.985505 1 2427149 lseek
0.05 0.009307 1 7706 read
------ ----------- ----------- --------- --------- ----------------
100.00 19.717765 7289171 total
Как я могу отладить это дальше, чтобы определить узкое место? Есть ли очевидная конфигурация PHP, которую мне нужно проверить? Файл php.ini на сервере в настоящее время имеет все настройки по умолчанию (например, output_buffering = 4096). Не уверен, что мне нужно внести какие-либо изменения там.
Любые предложения по устранению неполадок это будет высоко ценится. Спасибо.
Задача ещё не решена.
Других решений пока нет …