今天在做一个热门赛事列表查询的接口压测

http://192.168.10.98:8094/match/page?matchType=0&matchTime=0&matchStatus=0&matchName=

和开发讨论,说matchName字段采用like匹配,会导致查询慢,建议采用http://192.168.10.98:8094/match/page?matchStatus=0压测

最初的压测效果如下:

http://192.168.10.98:8094/match/page?matchStatus=0

发现

http://192.168.10.98:8094/match/page?matchType=0&matchTime=0&matchStatus=0&matchName=&page=1&rows=20

压测场景如下:查询热门赛事列表

压测脚本如下

压测前:

200线程并发:平均tps大约207左右,平均耗时1.3s

第一轮优化:

查看原始sql:

优化后

性能优化将近提升2倍,但是性能还没有达到理想值

通过监控mysql服务器的资源消耗:

发现mysql的资源基本完全消耗完毕,所以目前优化空间在mysql上

通过监控mysql慢查询

SELECTT2.*FROM (SELECT@area_id AS child_id,(SELECT @area_id := parent_id FROMdict_area WHERE AREA_ID = child_id) ASparent_id,(@area_level :=@area_level + 1) AS area_levelFROM(SELECT @area_id := 11959,@area_level := 0) v,dict_area hWHERE @area_id    <>   0 ) T1JOIN dict_area T2ON T1.child_id = T2.AREA_IDwhereT2.lang_type='zh_CN'ORDER BY T1.area_level ASC;

这条sql采用了递归查询,普通执行很快,但是高并发就很慢

通话程序代码优化,重新打包压测,性能测试结果tps提升一倍多

此时,http://192.168.10.98:8094/match/page?matchStatus=0  只带matchStatus字段,压测效果比较理想,但是随后再加上

http://192.168.10.45:8094/match/page?matchStatus=0&page=1&rows=20

性能还是回到tps平均在350左右

所以得持续分析优化

性能优化实战-sql递归查询效率低下相关推荐

  1. mysql 递归查询 效率_性能优化实战-sql递归查询效率低下

    今天在做一个热门赛事列表查询的接口压测 http://192.168.10.98:8094/match/page?matchType=0&matchTime=0&matchStatus ...

  2. MySQL 数据库性能优化之SQL优化

    2019独角兽企业重金招聘Python工程师标准>>> MySQL 数据库性能优化之SQL优化 发布时间: 2012 年 3 月 21 日  发布者: OurMySQL 来源:简朝阳 ...

  3. Sql性能优化之sql语句的写法

    Sql性能优化之sql语句的写法 一.引言 系统优化中一个很重要的方面就是SQL语句的优化.对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其 ...

  4. 《java性能优化实战》之编程性能优化

    目录 一.java编程性能优化实战 1.如何使用String.intern 节省内存 2.如何使用字符串的分割方法? 3.ArrayList还是LinkedList?使用不当性能差千倍 4.Strea ...

  5. SQL语句性能优化--LECCO SQL Expert

    SQL语句的优化是将性能低下的SQL语句转换成目的相同的性能优异的SQL语句. 人工智能自动SQL优化就是使用人工智能技术,自动对SQL语句进行重写,从而找到性能最好的等效SQL语句. 数据库性能的优 ...

  6. 2 周流量激增百倍的腾讯课堂后台扩容和性能优化实战

    作者:andyawang,腾讯 CSIG 后台开发工程师 疫情期间,学校网课需求激增,腾讯课堂 2 天上线极速版,2 周内支持同时在线人数超百倍增长,对整个后台挑战非常大.整整 2 个月下来,同合作团 ...

  7. 太牛了!我把阿里、腾讯、字节跳动、美团等Android性能优化实战整合成了一个PDF文档

    安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...

  8. 【性能优化实战,面试大厂应该注意哪些问题

    安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...

  9. 网站性能优化实战(二)

    转自IMWeb社区,作者:jerryOnlyZRJ,原文链接 --从Webkit内部渲染机制出发,谈网站渲染性能优化 本文是对前文:imweb.io/topic/5b6fd- 相关知识的补充,文中的& ...

  10. 网站性能优化实战(二)——深入浅出浏览器渲染机制

    --从Webkit内部渲染机制出发,谈网站渲染性能优化 本文是对前文:imweb.io/topic/5b6fd- 相关知识的补充,文中的"前文"一词同此. 特以此文向<Web ...

最新文章

  1. 【Jmeter篇】后置处理器之边界提取器
  2. WP7 Tip:改变启动页
  3. while 循环的理解
  4. 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_3_字节输出流_OutputStream类FileOutputStream...
  5. 产品读书《浪潮之巅》
  6. J-Link软件和文档包的版本发行说明(1)[V3.00d ~ V4.94j版本]
  7. 老板面试怎么谈?千万不要走近误区。
  8. SAP 增强学习(4):四代增强 隐式增强(Enhancement-Point)
  9. linux 以太网 mac,苹果Mac以太网卡的连接速度查看方法
  10. Jni调用so动态库
  11. 蓝桥ROS机器人之C++基础开发第一个程序
  12. Mybatis批量插入数据到Oracel
  13. 什么是APS高级计划排程(高级计划排产)可视化甘特图,有哪些应用效果?
  14. 42表盘直径是从哪测量_表盘直径多大合适,怎样测量手表表盘的直径
  15. 剪映怎么去水印,剪映怎么剪辑视频
  16. 微信机器人终端1.0未来的设想就是做成telegram一样强大的机器人群体集控终端
  17. Google入门到精通(搜索方法经典)
  18. adam算法效果差原因_深度学习优化器-Adam两宗罪
  19. 修改定位工具相关的app
  20. Mac OS 最强鼠标改键软件:BetterAndBetter

热门文章

  1. win7激活工具和pdf解密工具
  2. java生成点阵图_点阵字库在JAVA中的实现
  3. 贴片电容的命名规则和参数解释
  4. 阿里语音识别(语音转文字)java调用全程手把手详解-适合中小学生快速上手
  5. 怎样使用Fiddler工具进行APP抓包
  6. 2021阿里巴巴实习生面试经验
  7. pdf太大,pdf怎么压缩的小一点
  8. Windows10新版本设置卓越性能
  9. 合肥工业大学暑期“三下乡”——探访悠悠古村 发扬传统文化
  10. 阿里云国际版服务器电子商务直播解决方案