MySQL 5.5和MySQL 5.6的吞吐量测试

Percona的MySQL 5.5.33和mysql 5.6.14性能测试对比:

系统为:rhel 5.5,
    测试工具:sysbench
    CPU为2核,超线程,4个逻辑CPU
  innodb_buffer_pool_size配置为1G,连接数配置1000
  每种数据测试时间:30分钟


  由于我的io处理有限,所以在提交时不刷新日志.querycache设置为禁用.
 mysql> show global variables like '%innodb_flush_log_at_trx_commit%';
 +--------------------------------+-------+
 | Variable_name                  | Value |
 +--------------------------------+-------+
 | innodb_flush_log_at_trx_commit | 0    |
+--------------------------------+-------+
 1 row in set (0.00 sec)


mysql> show global variables like '%query_cache%';
 +------------------------------+---------+
 | Variable_name                | Value  |
 +------------------------------+---------+
 | have_query_cache            | YES    |
| query_cache_limit            | 1048576 |
| query_cache_min_res_unit    | 4096    |
| query_cache_size            | 0      |
| query_cache_strip_comments  | OFF    |
| query_cache_type            | OFF    |
| query_cache_wlock_invalidate | OFF    |
+------------------------------+---------+
 7 rows in set (0.00 sec)


数据准备

[root@localhost ~]#  sysbench  --test=oltp --oltp-table-size=1000000 --mysql-host=127.0.0.1 --mysql-db=frank
    --mysql-user=root --mysql-password=root prepare

5.5.33的测试结果

线程数    事务每秒(TPS)
    1          666.94
 
    8          2732.59

16        2708.15

32        2617.72

64        2605.82

128        2506.13

5.6.14的测试结果

线程数    事务每秒(TPS)
    1          690.29
 
    8          2534.15

16        2544.34

32        2500.91

64        2479.60

128        2394.28

结论:5.6.14的吞吐量没有提升.在多线程服务器上,当线程数达到cpu的两到三倍时吞量最大,继续增大线程,吞吐量反而下降.由于线程数增大,导致cpug上下文切换很厉害,影响性能。

Fedora 20下安装搭建LAMP环境Apache+MySQL+PHP

《MySQL权威指南(原书第2版)》清晰中文扫描版 PDF

源码包编译安装MySQL 5.6脚本

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/3f93f39e07141ebadd707fbce21f9a8a.html