勤快学

PhxSQL 性能

使用sysbench工具对PhxSQL和MySQL的半同步复制进行了性能对比。PhxSQL因为增加了Phxsqlproxy,导致读性能比原生MySQL略低;但由于PhxPaxos的实现比MySQL的半同步更加高效,让PhxSQL的写性能比半同步复制更好。

PhxSQL比MySQL读性能比原生MySQL略低,但写性能比MySQL半同步复制更好。


微信开源PhxSQL:高可用、强一致的MySQL集群

测试环境和结果如下:

机型信息

 

CPU : Intel(R) Xeon(R) CPU E5-2420 0 @ 1.90GHz * 24

 

内存 : 32G

 

磁盘 : SSD Raid10

 

网络互Ping耗时

 

Master -> Slave : 3 ~ 4ms

 

Client -> Master : 4ms

 

压测工具和参数

 

sysbench --oltp-tables-count=10 --oltp-table-size=1000000 --num-threads=500 --max-requests=100000 --report-interval=1 --max-time=200

 

压测内容

 

PhxSQL和半同步复制在Client线程200和500的环境下进行下面方式的压测:

insert.lua (100%写)

select.lua (0%写)

OLTP.lua (20%写)

 

压测结果

 

Client线程数:200


微信开源PhxSQL:高可用、强一致的MySQL集群

微信开源PhxSQL:高可用、强一致的MySQL集群

Client线程数:500


微信开源PhxSQL:高可用、强一致的MySQL集群

微信开源PhxSQL:高可用、强一致的MySQL集群

注:耗时分别为测试结果的平均耗时/95%分位数耗时,单位ms