zoukankan      html  css  js  c++  java
  • 案例:Mysql慢SQL与加索引前后对TPS的影响

    写在最前

    关于慢sql的开启与配置查看之前我整理的文章:

    http://www.cnblogs.com/hanxiaobei/p/5515624.html

    前提准备:

    tomcat7.x

    mysql--Perfteach

    jmeter

    测试接口:192.168.1.102:8081/PerfTeach/SlowQuery?cardNO=1000009

    脚本编写:

    单接口的测试jmeter比较方便,所以本文就用jmeter进行测试

    环境搭建及测试:

    1、配置Perfteach包 连接本地数据库(Perfteach库有一万条数据)

    2、启动tomcat

     ./startup.sh & tail -f ../logs/catalina.out

    3、浏览器验证接口是否通,看到如下界面为接口已通

    本文只做cardno字段的索引测试

    4、jmeter设置为20线程,1秒启动,循环永远

    同时,服务器进行监控

    5、没有添加cardno字段索引的时候,测试的结果TPS大概在120左右。为如下图所示

    同时,如果开启了慢查询日志,会看到不断的往日志里添加数据。如下图文件大小不断增加

    具体查看哪些SQL的执行有问题,打开写在最前的链接地址。

    6、添加cardno字段索引的时候,测试的结果TPS大概在600左右。为如下图所示

    同时,慢查询日志的大小不会有变化。证明索引起作用了

    7、下图为开始添加了cardno索引而后去掉cardno索引的TPS截图:

    下降很明显。

    本篇文章只是从TPS的角度考虑有无索引的情况对比分析。

    还有 在有索引的前提下,CPU和内存是怎样的状态;在无索引的前提下,CPU和内存又是怎样的状态。

    MySQL优化:http://zhanghongxin.blog.51cto.com/11255031/1851374

  • 相关阅读:
    MySQL存储树形数据优化技笔记
    收集18个高大上的浏览器小技巧
    收集18个高大上的浏览器小技巧
    盘点15个不起眼但非常强大的 Vim 命令
    盘点15个不起眼但非常强大的 Vim 命令
    为什么开发者应该摒弃敏捷?(转)
    为什么开发者应该摒弃敏捷?(转)
    MySQL 中事务、事务隔离级别详解
    pandas数据对齐
    Bokeh绘图
  • 原文地址:https://www.cnblogs.com/hanxiaobei/p/5544419.html
Copyright © 2011-2022 走看看