性能优化实战-sql递归查询效率低下
今天在做一个热门赛事列表查询的接口压测
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递归查询效率低下相关推荐
- mysql 递归查询 效率_性能优化实战-sql递归查询效率低下
今天在做一个热门赛事列表查询的接口压测 http://192.168.10.98:8094/match/page?matchType=0&matchTime=0&matchStatus ...
- MySQL 数据库性能优化之SQL优化
2019独角兽企业重金招聘Python工程师标准>>> MySQL 数据库性能优化之SQL优化 发布时间: 2012 年 3 月 21 日 发布者: OurMySQL 来源:简朝阳 ...
- Sql性能优化之sql语句的写法
Sql性能优化之sql语句的写法 一.引言 系统优化中一个很重要的方面就是SQL语句的优化.对于海量数据,劣质SQL语句和优质SQL语句之间的速度差别可以达到上百倍,可见对于一个系统不是简单地能实现其 ...
- 《java性能优化实战》之编程性能优化
目录 一.java编程性能优化实战 1.如何使用String.intern 节省内存 2.如何使用字符串的分割方法? 3.ArrayList还是LinkedList?使用不当性能差千倍 4.Strea ...
- SQL语句性能优化--LECCO SQL Expert
SQL语句的优化是将性能低下的SQL语句转换成目的相同的性能优异的SQL语句. 人工智能自动SQL优化就是使用人工智能技术,自动对SQL语句进行重写,从而找到性能最好的等效SQL语句. 数据库性能的优 ...
- 2 周流量激增百倍的腾讯课堂后台扩容和性能优化实战
作者:andyawang,腾讯 CSIG 后台开发工程师 疫情期间,学校网课需求激增,腾讯课堂 2 天上线极速版,2 周内支持同时在线人数超百倍增长,对整个后台挑战非常大.整整 2 个月下来,同合作团 ...
- 太牛了!我把阿里、腾讯、字节跳动、美团等Android性能优化实战整合成了一个PDF文档
安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...
- 【性能优化实战,面试大厂应该注意哪些问题
安卓开发大军浩浩荡荡,经过近十年的发展,Android技术优化日异月新,如今Android 11.0 已经发布,Android系统性能也已经非常流畅,可以在体验上完全媲美iOS. 但是,到了各大厂商手 ...
- 网站性能优化实战(二)
转自IMWeb社区,作者:jerryOnlyZRJ,原文链接 --从Webkit内部渲染机制出发,谈网站渲染性能优化 本文是对前文:imweb.io/topic/5b6fd- 相关知识的补充,文中的& ...
- 网站性能优化实战(二)——深入浅出浏览器渲染机制
--从Webkit内部渲染机制出发,谈网站渲染性能优化 本文是对前文:imweb.io/topic/5b6fd- 相关知识的补充,文中的"前文"一词同此. 特以此文向<Web ...
最新文章
- 【Jmeter篇】后置处理器之边界提取器
- WP7 Tip:改变启动页
- while 循环的理解
- 阶段1 语言基础+高级_1-3-Java语言高级_06-File类与IO流_04 IO字节流_3_字节输出流_OutputStream类FileOutputStream...
- 产品读书《浪潮之巅》
- J-Link软件和文档包的版本发行说明(1)[V3.00d ~ V4.94j版本]
- 老板面试怎么谈?千万不要走近误区。
- SAP 增强学习(4):四代增强 隐式增强(Enhancement-Point)
- linux 以太网 mac,苹果Mac以太网卡的连接速度查看方法
- Jni调用so动态库
- 蓝桥ROS机器人之C++基础开发第一个程序
- Mybatis批量插入数据到Oracel
- 什么是APS高级计划排程(高级计划排产)可视化甘特图,有哪些应用效果?
- 42表盘直径是从哪测量_表盘直径多大合适,怎样测量手表表盘的直径
- 剪映怎么去水印,剪映怎么剪辑视频
- 微信机器人终端1.0未来的设想就是做成telegram一样强大的机器人群体集控终端
- Google入门到精通(搜索方法经典)
- adam算法效果差原因_深度学习优化器-Adam两宗罪
- 修改定位工具相关的app
- Mac OS 最强鼠标改键软件:BetterAndBetter