首页 > 代码库 > MariaDB10和MySQL5.6社区版压力测试

MariaDB10和MySQL5.6社区版压力测试

补上作业,MariaDB10和MySQL5.6社区版压力测试,见下图:


sysbench(10.8.8.43)

MySQL5.6和MariaDB10.0.11(10.8.8.100)


压力测试参数:

sysbench  --test=oltp --mysql-table-engine=innodb 
--oltp-table-size=10000000 --max-requests=0 --max-time=900 
--num-threads=512 --mysql-host=10.8.8.100 --mysql-port=3308 
--mysql-user=admin --mysql-password=123456  --mysql-db=test run

1千万记录,不限制请求,压测15分钟,并发连接数512个。


my.cnf参数:

sync_binlog = 0
innodb_flush_log_at_trx_commit = 0
innodb_flush_method = O_DIRECT
innodb_flush_neighbors = 1
innodb_buffer_pool_size = 20G
innodb_io_capacity = 500
innodb_log_file_size = 512M
innodb_log_files_in_group = 3
innodb_log_buffer_size = 16M
tx_isolation = READ-COMMITTED
thread_handling = pool-of-threads(MariaDB的线程池)


机器配置:

比较差,DELL R610,2颗4核CPU,RAID1 7200转SAS硬盘。


wKioL1OWt0iiaG_KAADumUmrgOc447.jpg

可以明显的看到,在高并发的时候,MySQL5.6.19的性能减少了50%。


下面是top和压力测试截图:

MySQL5.6.19

wKiom1OWummyorYFAARpiAO0Rtc779.jpg

load average达到195,已经超负荷。


wKiom1OWuqeSwyh8AAKEt6EMwdI348.jpg

TPS为每秒1002.42个。


MariaDB10.0.11

wKiom1OWuyagWg_CAARKWhej2Nk005.jpg

load average为11.59


wKioL1OWvUSw1C9uAAMcKJxgmio262.jpg

TPS为每秒2044.80个。


补充:现在把并发连接数调成了900个,再压一次,看看TPS:

MySQL5.6.19

wKioL1OW3j2RAC6fAAJ7_mCu-uw744.jpg


MariaDB10.0.11

wKioL1OW3enzqGMnAALBbfVpKRE421.jpg


可以看到,随着并发连接数的增加,MySQL5.6性能持续下降,而MariaDB10,性能保持平稳。


结论:

大体和官方的测试差不多,因手里没有MySQL5.6的企业版,所以不能说MariaDB10就一定强,但在高并发环境,MySQL5.6.19社区版不建议使用在生产环境上。



本文出自 “贺春旸的技术专栏” 博客,请务必保留此出处http://hcymysql.blog.51cto.com/5223301/1424625