Sysbench写测试时报错

在搭建集群后利用Sysbench进行测试,读测试(point_select)可以正常进行,写测试(index_update)遇到报错

感觉一致性好像出了问题,想问问大佬们应该如何解决?

硬件配置:3台: arm处理器(2×40c 2.5GHz) 内存:32GB×8 硬盘:500G SSD / dapustor 3.2T

集群拓扑 10.10.12.6 10.10.12.78 10.10.12.9
numa 0 TiKV、PD TiKV、PD TiKV 、PD
numa 1 TiDB TiDB Haproxy、Sysbench

Tidb配置项:

server_configs:
  tidb:
    log.level: error
    mem-quota-query: 34359738368
    performance.server-memory-quota: 34359738368
    performance.txn-total-size-limit: 10485760000
    prepared-plan-cache.enabled: true
    token-limit: 3001
  tikv:
    coprocessor.split-region-on-table: false
    log-level: error
    raftdb.max-background-jobs: 12
    raftstore.apply-max-batch-size: 1024
    raftstore.apply-pool-size: 8
    raftstore.hibernate-regions: true
    raftstore.raft-max-inflight-msgs: 1024
    raftstore.store-max-batch-size: 1024
    raftstore.store-pool-size: 4
    rocksdb.compaction-readahead-size: 2MB
    rocksdb.defaultcf.max-write-buffer-number: 32
    rocksdb.writecf.max-write-buffer-number: 32
    server.grpc-concurrency: 8
    server.max-grpc-send-msg-len: 5242880
    storage.block-cache.capacity: 64G
    storage.scheduler-worker-pool-size: 8

看一下kv日志和tidb日志,tidb明显是罢工了,你把数据改小点试试。从1百万开始试试。


100w确实没有报错了,但是每隔200s会有这样的波动,看起来好像也不太正常

看下 tikv 的 pending 监控

好像确实有问题

换个机器去执行 sysbench ,截图看一下 Overview 面板 中的tidb Statement OPS 和sysinfo的

通过集群外的机器加压

Sysinfo:

tidb Statement OPS :

你这io硬盘繁忙度已经很高了,肯定会出现波动, 有延迟,你这ssd测试iops是多少。应该是硬盘到瓶颈了。把线程调小点,数据在调小点,测试一下最终的瓶颈。

J5310 3.2T 这个是标称,我们实测要比表格里稍微好一些

生产用的话建议吧TIKV独立,这盘一般,没有云厂的高。独立出来可以吧优势发挥到最大。

好的 明白了! 谢谢您!

sysbench 负载超过 硬件的能力了。

1 个赞