工作中碰到workerman启动失败最常见的就是由于启动脚本找不到主进程pid文件导致的,workerman 3.2.2之前的版本主进程pid文件默认存储在/tmp/下,有些系统会定时清理/tmp/目录,导致无法启动。
解决方法:
方法1:升级workerman到3.2.2或以上版本,workerman3.2.2 版本不在将pid文件存储在/tmp/下,另外提供了PHP xxx.php kill 命令,方便强行杀死workerman进程。
方法2:可以运行 ps aux | grep start.php | awk '{print $2}' | xargs kill -9 强行杀死进程。然后参考手册pidFile将pid文件存储在安全的地方。