Editor's note: From the Perspective of smart818, the effect of thread pool on performance is indeed very large, and mariadb can even be regarded as the mysql Enterprise Edition. The following high concurrency test shows that the performance of MySQL5.6.19 is reduced by 50%. The test also shows that MariaDB10 is indeed much better than MySQL5.6 community edition.
Complete the job. For MariaDB10 and MySQL5.6 Community version stress tests, see:
Sysbench10.8.8.43)
MySQL5.6 and MariaDB10.0.1110.8.8.100)
Stress test parameters:
- 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
10 million records, no request restrictions, 15 minutes of stress testing, 512 concurrent connections.
My. cnf parameters:
- 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 = 512 M
- Innodb_log_files_in_group = 3
- Innodb_log_buffer_size = 16 M
- Tx_isolation = READ-COMMITTED
- Thread_handling = pool-of-threadsMariaDB thread pool)
Machine Configuration:
Relatively poor, DELL R610, 2 4-core CPUs, RAID1WriteBack Policy) 7200 to SAS hard disk.
Obviously, the performance of MySQL5.6.19 is reduced by 50% in high concurrency.
Below are top and stress tests:
MySQL5.6.19
The load average reaches 195, Which is overloaded.
TPS is 1002.42 per second.
MariaDB10.0.11
Load average is 11.59
TPS is 2044.80 per second.
Supplement: now we have adjusted the number of concurrent connections to 900, and press it again. Let's take a look at TPS:
MySQL5.6.19
MariaDB10.0.11
As you can see, as the number of concurrent connections increases, the performance of MySQL5.6 continues to decline, while that of MariaDB10 keeps the performance stable.
Conclusion:
Basically similar to the official test, because there is no Enterprise Edition of MySQL5.6 in hand, MariaDB10 cannot be said to be strong, but in high concurrency environments, MySQL5.6.19 community edition is not recommended for production environments.
Official Test: Http://hcymysql.blog.51cto.com/5223301/1404998
Blog: http://hcymysql.blog.51cto.com/5223301/1424625