Skip to content

dble性能测试的数据如何判断合理性? #2851

Answered by wenyh1
PanternBao asked this question in Q&A
Discussion options

You must be logged in to vote

在与Mysql性能测试比较之前,需要先观测dble自身现状的性能如何.

Dble自身性能调优

在管理端(9066)中:

  • 使用 show @@cost_time 观察执行单条sql时,各个阶段的耗时.
  • 使用 show @@thread_used 用于观察dble内部不同线程的负载情况.

事实上,Dble官方文档中就有提及如何观测&调整:2.18 性能观测以及调试概览
注:调优中涉及的几个开启参数,需关闭,否则会影响后续的性能压测结果

Dble与Mysql性能的合理性比较

以下是在理想状态(每台应用之间的RTT和process耗时相等)的单线程场景下,Client -> Dble与Client -> Mysql的耗时比例:

  • Dble作为中间件,比直连Mysql多了一个RTT+一个processB(Dble内部处理数据时间);
  • 若应用之间的RTT处于不稳定,则排查下网络层面的状态
  • 实际上,在做Dble与Mysql性能对比时,主要需要看Dble的processB是否处于稳定值状态即可;

注:RTT值可以使用ping的方式获取

小结

结合上述的合理性比较,再看上面性能对比结果和RTT消耗的数据:

Dble Mysql Dble : Mysql
QPS/TPS均值 (2011.74+2037.01+2024.57)/3 (4439.20+4363.07+4415.87)/3 45 : 100
RTT耗时 0.308+0.301 0.270 100 : 44

假设,Dble的processB(处理数据耗时)不计, 预计Dble的QPS/TPS均值在(4406…

Replies: 1 comment

Comment options

You must be logged in to vote
0 replies
Answer selected by yanhuqing666
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Category
Q&A
Labels
None yet
2 participants