一直处理忙碌状态,求助busy排查问题

ak47f16200

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服务端口,没太明白 这个什么原因?

398 2 1
2个回答

walkor

从strace看这个进程在这儿时间点没有busy

  • ak47f16200 2023-12-22

    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]

  • ak47f16200 2023-12-22

    重启后还是一样这样

  • walkor 2023-12-22

    多strace几个进程看下吧,strace busy的进程

  • ak47f16200 2023-12-22

    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)
    这个是等待数据库吗?

  • walkor 2023-12-22

  • ak47f16200 2023-12-22

    好的,感谢

  • meows 2023-12-22

    看起来是不是你SQL慢?

  • ak47f16200 2023-12-22

    数据库没压力,偶尔有慢sql,

  • meows 2023-12-22

    请求稍微多些就出现慢查询,阻塞进程了

  • meows 2023-12-22

    还是需要优化下SQL语句

  • ak47f16200 2023-12-23

    感谢大家关注,找到原因了,阿里云代理地址原因,代理地址与数据库小版本不同升级后目前正常了

  • Tinywan 2023-12-23

    是不是使用代理地址就不行了?怎么解决的?

  • ak47f16200 2023-12-23

    升级了代理版本,目前地址还是用的代理地址。

  • Tinywan 2023-12-23

    之前也用阿里云的读写分离地址一直有问题,就替换为了master实例,你确定这个代理地址与数据库小版本不同有关系吗?

  • ak47f16200 2023-12-23

    应该是吧,反正升级之后,目前看一切正常,你们可以测试一下。升级之后我简单压力跑了一下,基本进程没有忙的情况,偶尔有一下但马上就好了

  • Tinywan 2023-12-23

    我这边之前是时间长了就会自动断开,也就是cli模式都会存在这种情况,和webman没关系

  • ak47f16200 2023-12-23

    数据库和redis我都写了心跳来维持着。另外一个项目连了好多库,也是用心跳来维持的,线上跑了一年目前没发现gone away的情况

  • ak47f16200 2023-12-23

    我遇到的不是链接断开的问题,直接连库也慢的要死,升级后没问题了。

  • Tinywan 2023-12-23

    就是: N/A N/A N/A N/A N/A [busy] 这种情况。你现在最小版本是:rds_20230531,是不是。代理后有挂在多个只读实例没?

  • ak47f16200 2023-12-23

    我们是一主二从的模式

Tinywan

再确认一下,是否是这个代理地址哦

截图

  • ak47f16200 2023-12-23

    周一吧,周一我确认一下。

  • Tinywan 2023-12-25

    好的,确认好了告诉我一下

  • ak47f16200 2023-12-25

    刚确认了,是这个地址,我们目前升级成最新的了,你升级下试试看

  • Tinywan 2023-12-25

    我这边最新版本最小版本是:rds_20230531

🔝