MySQL 5.6.17/Percona5.6.16/MariaDB 10.0.11/OneSQL 5.6.16压测瓶颈分析

之前我进行了MySQL 5.6.17/Percona5.6.16/MariaDB 10.0.11/OneSQL 5.6.16对比基准TPCC压测,从测试结果可以看到在高并发(并发1920线程)模式下,MariaDB的相对优势,也看到了在一般并发场景(并发64线程)模式下,MariaDB拥有绝对优势。

今天我们就来看看这两种模式下,系统负载等性能指标表现,以及各自的瓶颈在哪里,也就能知道为何有这么大差异了。

首先,我们看下并发64线程的对比图表:

MySQL-Percona-MariaDB-perf-data-under-64th

再看下并发1920线程的对比图表:

MySQL-Percona-MariaDB-perf-data-under-1920th

从上面两个图可以看出来几点信息:

结论:
1、并发64线程时,MySQL的瓶颈在 spin_lock,所以 %SYS 跑的很高,TpmC也上不去;
2、并发64线程时,Percona次要瓶颈也是 spin_lock,相比之下 %SYS 也较高,TpmC上不去;
3、并发1920线程时,spin_lock 都是最大的瓶颈,MySQL和Percona的次要瓶颈是lock_rec_has_to_wait_in_queue()函数,因此相对的TpmC也跑不高;

MySQL 5.6.17/Percona5.6.16/MariaDB 10.0.11/OneSQL 5.6.16压测瓶颈分析》上有5条评论

  1. bbq

    想请教下onesql修改了什么内容,为何表现这么好。另外叶老师您认为分支版的onesql是否已经完全可以替代上线使用了呢?

  2. yejr 文章作者

    他增加了限流机制,简单说,就是限制MySQL内部事务并发数,确保一个比较平缓的并发事务数被执行,降低内部竞争,以获得比较平稳的TPS表现

  3. Pingback引用通告: TPCC-MySQL基准测试 | Debugo

  4. yejr 文章作者

    这里对比分析不同并发模型对不同分支的瓶颈点。实际我测试了更多并发模型,只是在这里拿了64、1920不同并发来做对比而已,更快发现性能瓶颈点。

发表评论

电子邮件地址不会被公开。

Time limit is exhausted. Please reload CAPTCHA.