我發(fā)現(xiàn)workerman 運(yùn)行一段時(shí)間后查看status 就出現(xiàn)not run
$ php start.php status
Workerman status
Workerman not run
用戶定義信號(hào) 2
通過(guò)netstat -tunlp |grep 1081 命令發(fā)現(xiàn)程序仍然在運(yùn)行
$netstat -tunlp |grep 1081
tcp 0 0 0.0.0.0:1081 0.0.0.0:* LISTEN 6766/php
我覺得這里應(yīng)該是找不到pid文件文件了,pid文件應(yīng)該是存在/tmp文件夾下,所以我想知道在centos 7 系統(tǒng)下多久清理一次/tmp文件夾?!緋s:cetnos 7 默認(rèn)是沒(méi)有安裝tmpwatch這個(gè)命令的 (用來(lái)定時(shí)清理/tmp)】
可以手動(dòng)設(shè)置 pid文件位置,這樣可以避免pid文件被清理
http://doc3.workerman.net/worker-development/pid_file.html
遇見 status not run 的問(wèn)題..
? WorkerMan_Demo php start.php start -d
Workerman start in DAEMON mode
----------------------- WORKERMAN -----------------------------
Workerman version:3.1.9 PHP version:5.5.29
------------------------ WORKERS -------------------------------
user worker listen processes status
zhangxiaoman none tcp://0.0.0.0:1234 4
----------------------------------------------------------------
Input "php start.php stop" to quit. Start success.
啟動(dòng)正常..
WorkerMan_Demo php start.php status
Workerman status
PHP Warning: readfile(/var/folders/t2/v7bvy5_j3mv_087_qms44s1h0000gp/T/workerman.status): failed to open stream: No such file or directory in /Users/zhangxiaoman/WorkerMan_Demo/vendor/workerman/workerman/Worker.php on line 520
PHP Stack trace:
我看了..
/var/folders/t2/v7bvy5_j3mv_087_qms44s1h0000gp/T/workerman.status
這個(gè)文件不存在..
跟 pid 沒(méi)有關(guān)系吧
這是啥原因啊???
workerman啟動(dòng)后會(huì)向 http://php.net/manual/zh/function.sys-get-temp-dir.php 函數(shù)返回的目錄中寫入pid文件和狀態(tài)文件
你的環(huán)境 sys_get_temp_dir() 返回的路徑不存在
創(chuàng)建一個(gè)目錄就好了
情況是這樣的...
/var/folders/t2/v7bvy5_j3mv_087_qms44s1h0000gp/T/
這個(gè)目錄是創(chuàng)建成功了..
pid 文件也生成了.
只是狀態(tài)文件沒(méi)有生成..