运行 ps aux | grep php 后,我发现大约 10 个由 cron 运行的 php 脚本已经在一周前启动并且处于挂起状态。
每个脚本通常需要40秒才能完成。
我已经设置了 ini_set('max_execution_time', 60),希望它会在 60 秒后终止。
我该如何诊断发生了什么?
谢谢
答案1
使用 strace、ltrace 等工具查看特定挂起的脚本进程正在做什么。如果它卡在 fd 上执行某项操作(例如阻塞选择),则查看 lsof。
运行 ps aux | grep php 后,我发现大约 10 个由 cron 运行的 php 脚本已经在一周前启动并且处于挂起状态。
每个脚本通常需要40秒才能完成。
我已经设置了 ini_set('max_execution_time', 60),希望它会在 60 秒后终止。
我该如何诊断发生了什么?
谢谢
使用 strace、ltrace 等工具查看特定挂起的脚本进程正在做什么。如果它卡在 fd 上执行某项操作(例如阻塞选择),则查看 lsof。