当前位置: 首页 > news >正文

踩坑日记:线上接口超时问题排查

1.背景:

上线后,功能测试.  进入小程序页面发现很慢,耗时超过5秒,打开skywalking发现大量接口耗时都很高.

2.top命令

服务器top命令查看cpu资源发现占用并不高

3.mysql查看sql运行情况

# 当前运行的所有事务

select * from information_schema.innodb_trx;

1 |                NULL |
| 422058432413352 | RUNNING   | 2024-10-16 19:19:56 | NULL                  | NULL             |          0 |               33722 | SELECT count(1) FROMt_account_tradeLEFT JOIN t_user u ON u.user_id = t_account_trade.user_id oru.TG_id = t_account_trade.user_id                                  | fetching rows       |                 2 |                 0 |                0 |                  1128 |               0 |                 0 |                       0 | READ COMMITTED      |                 1 |                      1 | NULL                       |                         0 |                         0 |                1 |                          1 |                NULL |
| 422058432416616 | RUNNING   | 2024-10-16 19:00:54 | NULL                  | NULL             |          0 |               33589 | SELECT count(1) FROMt_account_tradeLEFT JOIN t_user u ON u.user_id = t_account_trade.user_id oru.TG_id = t_account_trade.user_id                                  | fetching rows       |                 2 |                 0 |                0 |                  1128 |               0 |                 0 |                       0 | READ COMMITTED      |                 1 |                      1 | NULL                       |                         0 |                         0 |                1 |                          1 |                NULL |
| 422058432414984 | RUNNING   | 2024-10-16 19:00:46 | NULL                  | NULL             |          0 |               33588 | SELECT count(1) FROMt_account_tradeLEFT JOIN t_user u ON u.user_id = t_account_trade.user_id oru.TG_id = t_account_trade.user_id                                  | fetching rows       |                 2 |                 0 |                0 |                  1128 |               0 |                 0 |                       0 | READ COMMITTED      |                 1 |                      1 | NULL                       |                         0 |                         0 |                1 |                          1 |                NULL |

大量查询sql处于running状态:  

SELECT count(1) FROM
        t_account_trade
        LEFT JOIN t_user u ON u.user_id = t_account_trade.user_id or
        u.TG_id = t_account_trade.user_id

很明显是sql里面里面加了or 导致没走索引, 线上百万数据必然会卡死 .

结合业务去掉or u.TG_id = t_account_trade.user_id ,重新发布,重启mysql,问题解决
       

http://www.lryc.cn/news/461876.html

相关文章:

  • C语言中的段错误(Segmentation Fault):底层原理及解决方法
  • 1.两数之和 暴力枚举和暴力搜索法
  • 你的收入达到了缴纳个人所得税的标准了吗?
  • 【C++贪心】2086. 喂食仓鼠的最小食物桶数|1622
  • notepad++中实现代码整体缩进和退格
  • 如何调整配置请款单上的立账条件
  • 骨传导耳机精选:2024最佳骨传导耳机有哪些?分享骨传导耳机top5
  • for循环与webAPI练习题
  • FLUX | 轻松掌握FLUX.1 LoRA本地训练秘籍!
  • LeetCode 每日一题 最小元素和最大元素的最小平均值
  • PHP学习记录-编辑器推荐和本地环境的安装
  • 嵌套div导致子区域margin失效问题解决
  • 搭建app业务的服务器优势类型用途等
  • 基于Springboot+Vue的个性化推荐影院(含源码数据库)
  • SpringMVC后台控制端校验-表单验证深度分析与实战优化
  • Codeforces Round 770 (Div. 2)
  • ProteinMPNN中蛋白质特征提取
  • Word中如何删除表格下一页的空白页
  • RabbitMQ 如何保证消息不丢失?
  • Oracle或者PL/SQL导入pde文件
  • 【QAMISRA】解决导入commands.json时报错问题
  • 影刀RPA实战番外:excel函数应用指南
  • php生成PDF文件(FPDF)
  • (接口测试)day01接口测试理论 http理论 接口测试流程 接口文档解析
  • Telegram——Bot 机器人/小程序入门指南
  • tauri build 后界面样式失效
  • 打印自然常数E
  • 澳鹏干货 | 大语言模型的上下文窗口 (Context Windows)
  • 为什么k8s不支持docker-kubernetes
  • 数据结构编程实践20讲(Python版)—17散列