15:36:00.605523 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 0) = 0 (Timeout)
15:36:00.605595 epoll_wait(5, [{EPOLLIN, {u32=4, u64=4}}], 32, -1) = 1
15:36:01.182484 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 0) = 0 (Timeout)
15:36:01.182578 epoll_wait(5, [{EPOLLIN, {u32=4, u64=4}}], 32, -1) = 1
15:36:02.802752 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 0) = 0 (Timeout)
15:36:02.802829 epoll_wait(5, [{EPOLLIN, {u32=4, u64=4}}], 32, -1) = 1
15:36:03.215835 poll([{fd=4, events=POLLIN|POLLERR|POLLHUP}], 1, 0) = 0 (Timeout)
15:36:03.215914 epoll_wait(5, ^Cstrace: Process 29832 detached
php 29832 root 1w REG 253,1 109541 2255754 /www/wwwroot/yjh-api/data/workerman/stdout.log
php 29832 root 2w REG 253,1 109541 2255754 /www/wwwroot/yjh-api/data/workerman/stdout.log
php 29832 root 3w REG 253,1 1900304 2255753 /www/wwwroot/yjh-api/data/workerman/log/log.log
php 29832 root 4u IPv4 10723372 0t0 TCP *:8901 (LISTEN)
php 29832 root 5u a_inode 0,10 0 6387 [eventpoll]
php 29832 root 6u unix 0xffff96b7f88a8000 0t0 10722407 socket
php 29832 root 7u unix 0xffff96b78b57e800 0t0 10722408 socket
根据教程查询是8901端口,但这个商品是我web服务端口,没太明白 这个什么原因?
从strace看这个进程在这儿时间点没有busy
pid memory listening worker_name connections send_fail timers total_request qps status
4333 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4334 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4335 12.79M http://0.0.0.0:8901 |接口 0 0 0 31 0 [idle]
4336 12.76M http://0.0.0.0:8901 |接口 0 0 0 35 0 [idle]
4337 12.95M http://0.0.0.0:8901 |接口 0 0 0 27 0 [idle]
4338 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4339 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4340 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4341 13.01M http://0.0.0.0:8901 |接口 0 0 0 37 0 [idle]
4342 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4343 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
4344 N/A http://0.0.0.0:8901 |接口 N/A N/A N/A N/A N/A [busy]
重启后还是一样这样
多strace几个进程看下吧,strace busy的进程
16:14:03.928054 poll([{fd=8, events=POLLIN|POLLERR|POLLHUP}], 1, 86400000^Cstrace: Process 4343 detached
php 4343 root 8u IPv4 11218367 0t0 TCP 172.31.14.227:53204->172.31.14.201:3306 (ESTABLISHED)
这个是等待数据库吗?
对
好的,感谢
看起来是不是你SQL慢?
数据库没压力,偶尔有慢sql,
请求稍微多些就出现慢查询,阻塞进程了
还是需要优化下SQL语句
感谢大家关注,找到原因了,阿里云代理地址原因,代理地址与数据库小版本不同升级后目前正常了
是不是使用代理地址就不行了?怎么解决的?
升级了代理版本,目前地址还是用的代理地址。
之前也用阿里云的读写分离地址一直有问题,就替换为了master实例,你确定这个代理地址与数据库小版本不同有关系吗?
应该是吧,反正升级之后,目前看一切正常,你们可以测试一下。升级之后我简单压力跑了一下,基本进程没有忙的情况,偶尔有一下但马上就好了
我这边之前是时间长了就会自动断开,也就是cli模式都会存在这种情况,和webman没关系
数据库和redis我都写了心跳来维持着。另外一个项目连了好多库,也是用心跳来维持的,线上跑了一年目前没发现gone away的情况
我遇到的不是链接断开的问题,直接连库也慢的要死,升级后没问题了。
就是:
N/A N/A N/A N/A N/A [busy]
这种情况。你现在最小版本是:rds_20230531,是不是。代理后有挂在多个只读实例没?我们是一主二从的模式
周一吧,周一我确认一下。
好的,确认好了告诉我一下
刚确认了,是这个地址,我们目前升级成最新的了,你升级下试试看
我这边最新版本最小版本是:rds_20230531