Open xuanyanwow opened 1 year ago
10.2.164.000 ip错的
Message ID: @.***>
这是我为提交issue 隐藏机器IP 手动改掉的, 原本IP是对的 已核对过
分布式部署么? 10.2.164.000 这个ip的服务可能有问题,可能是报错了,gatewayWorker进程退出了。还有从你贴的status看服务器负载太高了
load average: 15.7, 17.4, 17.13
得出吗,一般该值超出多少则可认为负载太高 该值在三种进程中的含义是否一致?(参考值是否一致)frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
frame not masked so close the connection
Workerman[/home/htdocs/im/src/Command/ServerCommand.php] status
----------------------------------------------GLOBAL STATUS----------------------------------------------------
Workerman version:4.1.11 PHP version:8.1.16
start time:2023-09-13 11:09:50 run 0 days 10 hours
load average: 22.3, 20.97, 20.85 event-loop:\Workerman\Events\Event
1 workers 4 processes
worker_name exit_status exit_count
Gateway 0 0
----------------------------------------------PROCESS STATUS---------------------------------------------------
pid memory listening worker_name connections send_fail timers total_request qps status
9 7.85M websocket://0.0.0.0:1216 Gateway 1154 4 3 25770080 0 [idle]
10 9.19M websocket://0.0.0.0:1216 Gateway 1377 9 3 27351740 0 [idle]
11 8.04M websocket://0.0.0.0:1216 Gateway 1190 5 3 25933475 0 [idle]
12 8.83M websocket://0.0.0.0:1216 Gateway 1321 7 3 26545133 0 [idle]
----------------------------------------------PROCESS STATUS---------------------------------------------------
Summary 32M - - 5042 25 12 105600428 0 [Summary]
load average: 15.7, 17.4, 17.13 是负载,一般不超过cpu核心数70%
好的,我先尝试扩容降低负载再观察是否还有loop的问题 谢谢大佬
你们是压测么? gatewayWorker内部接口调用(例如Gatway::sendToAll())一般会与所有gateway进程通讯一次,所以整个集群的gateway进程数越少整个集群效率越高,负载越低。如果系统是因为内部频繁Gateway接口调用导致的负载高,增加gateway服务器并不能减少负载,反而会让负载更高。
如果你们有非常频繁的Gateway接口调用,gateway服务器建议只开两台服务器,每台只开2个进程,可以降低整个集群负载。
不是压测,是正式环境的请求量
目前gatewaWorker的进程数量为:3个节点,每个节点4个进程。
会频繁调用Client::sendToUid()
我们尝试一下降低gatewayWorker进程数量观察一下负载
不是压测,是正式环境的请求量 目前gatewaWorker的进程数量为:3个节点,每个节点4个进程。 会频繁调用
Client::sendToUid()
我们尝试一下降低gatewayWorker进程数量观察一下负载
现在怎么样了。 看你DEBUG面板统计,你的连接数很少,但是每个连接的通讯量很大(短时间大量请求数据包)
frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection frame not masked so close the connection
masked 这个应该是客户端发送到Gateway网关的websocket 二进制帧不合法,Gateway 认定为非法连接给关闭了。
businessWorker运行一段时间之后产生以下报错信息,使用K8S部署,启动3个pod,只有1个pod出现这问题,不会同时出现;
查询status 有一个进程是N/A busy状态
请问作者大佬,此问题应该如何排查定位问题