2022/06/16 00:31:12 [error] 8582#0: *21606 upstream timed out (110: Connection timed out) while reading response header from upstream, client: 119.32.47.248, server: gyqj.njqjzy.ink, request: "GET /wss HTTP/1.1", upstream: "http://127.0.0.1:2348/wss", host: "gyqj.njqjzy.ink"
代理不通
但是我是按照wokerman的官方手册去配置的,有时候能连上,有时候又不能连上
location /wss
{
proxy_pass http://127.0.0.1:2348/wss;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header X-Real-IP $remote_addr;
}
连不上的时候运行 php start.php status 截图,截图截完整
以上图片就行
执行top命令,然后截图上半部分
好了
ps auxf
找到关键字pid为6428 部分,截个大图把6248这个进程相关信息截图出来,包括进程间关系好了
6248这个进程把cpu打满了,如果nginx代理连到这个有问题的进程可能就超时了。6248这个进程的父进程可能被你kill掉了。停止workerman的使用尽量用stop命令,不然你可能kill不干净。
执行
kill -9 6248
把有问题的进程kill掉就好了。好的,我试试
这个cpu被打满的根本原因就是没有杀的干净吗?
应该不是,如果你想知道为啥 可以执行
strace -ttp 6428
看进程在干什么我按照你说的把wokerman先stop了之后再去kill的时候 直接说没有该进程了
6428 不是 6248
哈哈,我看你给我打的6248
稍等
非常感谢您,解决了
再麻烦您一下,就是说6428这个进程有可能是我之前没有打干净,然后成了一个带垃圾的问题进程,然后在每次去请求这个代理的时候,就会直接转发到这个进程上,从而把这个进程的cpu打满是吧
代理去请求这个有问题进程的时候可能会超时。cpu打满可能是这个进程本身有问题,不一定是连接转发过来导致的
好的 了解
好的 谢谢