RocketMQ压测报告书
RocketMQ压测报告书公司需要压测RocketMq,这里给出个人的压测结果。因为机器不足的原因,这里只能做基准测试。不能做容量测试、稳定性和异常测试。1. 部署结构1.1 机器组成2台机器 4c16g nameserver4台机器 4c16g broker压力机一台 一个 producer + 一个consumer1.2 OS配置系统:Linux ,CentOs7内核:Linux versio
RocketMQ压测报告书
公司需要压测RocketMq,这里给出个人的压测结果。因为机器不足的原因,这里只能做基准测试。不能做容量测试、稳定性和异常测试。
1. 部署结构
1.1 机器组成
2台机器 4c16g nameserver
4台机器 4c16g broker
压力机一台 一个 producer + 一个consumer
1.2 OS配置
系统:Linux ,CentOs7
内核:Linux version 4.4.238-1.el7.elrepo.x86_64,(CentOS7默认使用的是3.10.0-693.2.2.el7.x86_64 x86_64,升级看这里:https://www.cnblogs.com/polk6/p/11282477.html)万达的系统不需要升级,默认使用的调度算法是mq-deadline。多队列调度算法。
文件系统:XFS
防火墙状态:关闭
在RocketMq之中,官方已经给出了Linux提优的配置脚本。在bin目录的os.sh,只是脚本之后有某些测试适用于CentOS 6,CentOS7之中有所改动。因此需要针对自己的系统做出修改。特别是系统IO调度算法这一块。
位置 | 参数名称 | 默认值 | 建议值 | 备注 | 分类 |
---|---|---|---|---|---|
/proc/sys/vm/overcommit_memory | vm.overcommit_memory | 0 | 1 | 内存页配置 | |
/proc/sys/vm/drop_caches | vm.drop_caches | 0 | 1 | 内存页配置 | |
/proc/sys/vm/zone_reclaim_mode | vm.zone_reclaim_mode | 0 | 0 | 内存页配置 | |
/proc/sys/vm/max_map_count | vm.max_map_count | 65530 | 655360 | 内存页配置 | |
/proc/sys/vm/dirty_background_ratio | vm.dirty_background_ratio | 10 | 50 | 内存页配置 | |
/proc/sys/vm/dirty_ratio | vm.dirty_ratio | 30 | 50 | 内存页配置 | |
/proc/sys/vm/dirty_writeback_centisecs | vm.dirty_writeback_centisecs | 500 | 360000 | 内存页配置 | |
/proc/sys/vm/page-cluster | vm.page-cluster | 3 | 3 | 内存页配置 | |
/proc/sys/vm/swappiness | vm.swappiness | 30 | 1 | 内存页配置 | |
/etc/profile | openfile | 1024 | 655350 | 执行命令:echo ‘ulimit -n 655350’ >> /etc/profile | 文件连接数 |
/etc/security/limits.conf | hard nofile | 655350 | 执行命令:echo ‘* hard nofile 655350’ >> /etc/security/limits.conf | 系统文件句柄设置 | |
/etc/security/limits.conf | hard memlock | unlimited | 执行命令:echo ‘* hard memlock unlimited’ >> /etc/security/limits.conf | ||
/etc/security/limits.conf | soft memlock | unlimited | 执行命令:echo ‘* soft memlock unlimited’ >> /etc/security/limits.conf |
以上这些配置直接执行os.sh即可(需要root权限)。
系统I/O调度算法: deadline。(这个配置执行os.sh在CentOS7之中会出现异常,因为大家的挂载方式不同。)
deadline调度算法是数据库,MQ这些频繁操作系统IO的应用非常适合的算法。分别为读、写请求创建了不同的 I/O 队列,可以提高机械磁盘的吞吐量,并确保达到最终期限(deadline)的请求被优先处理。DeadLine 调度算法,多用在 I/O 压力比较重的场景,比如数据库等。
我是直接查找出自己RocketMq将要读写的位置是挂载在哪里的,然后修改os.sh,再执行。
比如我查找到RocketMq读写时再/sda下,然后修改os.sh,如下:
echo 'deadline' > /sys/block/sda/queue/scheduler
需要注意的是: vm.zone_reclaim_mode=0的意思就是内存分配的时候,可以借助别的numa分配的内存。我这次基准测试是没有开启的,如果CPU核数比较多(比如64核),建议开启。否则0和1没有太大的区别。
JVM参数配置使用官方提供的默认的
-server -Xms8g -Xmx8g -Xmn4g -XX:+UseG1GC -XX:G1HeapRegionSize=16m -XX:G1ReservePercent=25 -XX:InitiatingHeapOccupancyPercent=30 -XX:SoftRefLRUPolicyMSPerMB=0 -verbose:gc -Xloggc:/dev/shm/rmq_broker_gc_%p_%t.log -XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintAdaptiveSizePolicy -XX:+UseGCLogFileRotation -XX:NumberOfGCLogFiles=5 -XX:GCLogFileSize=30m -XX:-OmitStackTraceInFastThrow -XX:+AlwaysPreTouch -XX:MaxDirectMemorySize=15g -XX:-UseLargePages -XX:-UseBiasedLocking
1.3 部署方式
物理部署
2主2从,同步复制
2. 性能技术指标
2.1 评测目的
压测单机TPS,评估单机容量
2.2 测试的指标
目前生产环境由两台4c8g的机器搭建的RocketMq环境,采用两主两从同步复制的方式。两台主机各有1300个(实际是1239个)和broker相关的长连接。通常情况下:producer的数量会大于consumer的数量。即写的数量大于读的数量。
线程数
这里我们要求高点,50%是producer,50%是consumer,那么我们大概有650个produer。(不考虑consumer大于producer的不合理情况。)
因为RocketMq创建的都是长连接。一般业务并发度为1%~5%(根据https://time.geekbang.org/column/article/181916得知)。即并发线程数我们可以认为是650 * 5% = 32.5。即我们的并发线程达到33即满足当前生产环境。
TPS
从控制台看到我们总共发送了将近6亿数据(两台broker相加)。
这个统计是从broker启动就开始,放在内存之中,关闭内存即消失,下次启动从头开始计。
假设上次重启是2个星期前(实际可能远远不止。)并且和发送较为平缓(因为我们没有秒杀的场景)。
那么当前生产需要的写的tps是:
6,0000,0000 / (2 * 7 * 24 * 60 * 60)= 600,000,000 / 1,209,600 = 496 取500
按20201007国庆高峰期来看一天的生产的量是1962630+1847619=3810249。我们取4,000,000
业务开始 按现在的情况 每次投产必须8点开业 就按早8点 到晚上24点 16个小时 然后安排28原则 计算峰值tps,这样算生产需要写的tps峰值是 :
4,000,000 + 4000000 3 \sqrt[3]{4000000} 34000000 ≈ \approx ≈ 4,000,158
(4,000,158 * 0.8)/ (12 * 3600 * 0.2) ≈ \approx ≈ 370
读的TPS依赖于consumer代码编写的规范。这里不做特殊要求,RocketMq支持消息积压,另外如果我们消费消息过慢,建议从从服务器读消息,读写分离可以让我们得到更好的性能。我们这里按照官方给的consumer压测工具的消费能力即可。
响应时间
目前我们RocketMq的底层了默认请求的响应超时时间是5s,那么我们的目标就是发送写的时间不能超过5s。可以通过参数设置为30s。
最后我们的业务目标是33线程,写TPS大于370,最大响应时间在5s内,平均在3s内。
按照5年业务增长,写的TPS增长为370 * 5 = 1850 TPS。
最终业务增长指标RocketMQ的写为1850 TPS,我们取2000。
我们汇总在一个表格中:
业务 | 业务目标TPS | 业务增长目标TPS |
---|---|---|
写 | 370 | 2000 |
消息大小
目前生产环境发送最多两个消息分别为:XXX_TOPIC,YYY_topic。两者大小分别为500bytes,1000bytes(取整)。
我们压测分别测试128bytes和1024bytes即可。
3. 监控内容
消息:TPS
cpu:load,sy,us
内存:useed,free,swap,cache,buffer
I/O:iops,ioutil,吞吐量(数据物理读写大小/秒)
网络:网卡流量
ioutil最好不要超过75%,cpu load最好不超过总的核数或者太多,没有发生频繁的swap导致较大的内存颠簸。
4. 压测方案
业务模型
接口 | 占比 |
---|---|
写 | 50% |
读 | 50% |
压测类型
基准测试
容量测试
稳定性测试
异常测试
加压方式
梯度加压,5线程梯度开始加压,每次加5线程,加至100线程。
延时方式
无间隔发送消息,和消费消息。
压测场景
1)基准测试
默认配置的发送+消费
改进配置的发送+消费
2)容量测试
当前生产环境的发送+消费。
升级4.5.2同步复制
升级4.5.2异步复制
3)稳定性测试
并发64,发送和消费同时开启12小时/24小时,无异常情况。
4)异常测试
并发20,kill掉一台producer,跑30分钟,tps波动不大即可。
5. 基准测试
下面的基准测试是我的私人测试:
1台机器 2c4g nameserver
1台机器 4c8g broker
宿主机 一个 producer + 一个consumer
宿主机运行在SSD上,虚拟机运行在SATA磁盘上。
对比测试:默认配置
RocketMq的配置:
brokerClusterName=DefaultCluster
brokerName=broker-a
brokerId=0
deleteWhen=04
fileReservedTime=48
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
发送业务功能测试
topic 2 threadCount 64 messageSize 128 keyEnable false timeout 3000ms
Send TPS: 15841 Max RT: 541 Average RT: 3.907 Send Failed: 0 Response Failed: 0
Send TPS: 30216 Max RT: 541 Average RT: 2.118 Send Failed: 0 Response Failed: 0
Send TPS: 33279 Max RT: 541 Average RT: 1.923 Send Failed: 0 Response Failed: 0
...
消费业务功能测试
topic: BenchmarkTest, group: benchmark_consumer_61, suffix: true, filterType: null, expression: null
TPS: 1455 FAIL: 0 AVG(B2C) RT: 269264337.538 AVG(S2C) RT: 269264501.417 MAX(B2C) RT: 269266740 MAX(S2C) RT: 269266906
...
根据上面我们汇总一个表格
业务 | 最大TPS | 最大响应时间 | 业务占比 | 业务目标TPS | 业务增长目标TPS | 目标响应时间 |
---|---|---|---|---|---|---|
写 | 33279 | 541 | 50% | 500 | 1,428 | 5s |
读 | 4382 | 不考虑 | 50% | 不考虑 | 不考虑 | 不考虑 |
这里解释一下这些含义:
B2C:born2Consumer,表示从这个消息出生到消费间隔的时间。考虑的是实时性。
S2C:store2Consumer,表示从这个消息保存在broker到消费的时间间隔。也是考虑的是实时性。
对比测试:改进配置
RocketMq的改进如下:
namesrvAddr=192.168.150.10:9876
brokerName=broker-a
brokerClusterName=DefaultCluster
brokerId=0
deleteWhen=04
fileReservedTime=120
brokerRole=ASYNC_MASTER
flushDiskType=ASYNC_FLUSH
autoCreateTopicEnable=false
autoCreateSubscriptionGroup=true
transientStorePoolEnable=true
waitTimeMillsInSendQueue=6000
osPageCacheBusyTimeOutMills=6000
useReentrantLockWhenPutMessage=true
warmMapedFileEnable=true
transferMsgByHeap=false
发送业务功能测试
topic BenchmarkTest threadCount 64 messageSize 128 keyEnable false
...
Send TPS: 39183 Max RT: 2800 Average RT: 1.675 Send Failed: 0 Response Failed: 0
Send TPS: 40822 Max RT: 2800 Average RT: 1.576 Send Failed: 0 Response Failed: 0
...
Send TPS: 49428 Max RT: 2466 Average RT: 1.293 Send Failed: 0 Response Failed: 0
消费业务功能测试
TPS: 8356 FAIL: 0 AVG(B2C) RT: 8800238.515 AVG(S2C) RT: 8800231.139 MAX(B2C) RT: 8808906 MAX(S2C) RT: 8808903
TPS: 8187 FAIL: 0 AVG(B2C) RT: 8800838.594 AVG(S2C) RT: 8800836.053 MAX(B2C) RT: 8807161 MAX(S2C) RT: 8807159
...
根据上面我们汇总一个表格
业务 | 最大TPS | 最大响应时间 | 业务占比 | 业务目标TPS | 业务增长目标TPS | 目标响应时间 |
---|---|---|---|---|---|---|
写 | 49428 | 541 | 50% | 500 | 1,428 | 5s |
读 | 不考虑 | 50% | 不考虑 | 不考虑 | 不考虑 |
生产者略有提升。消费者有较大提升
6. 容量测试
发送和消费同时开启,并且是多个主机:
线程按5递增,得出MQ并发的瓶颈,每次跑10min,出现错误即停止。
对比测试,当前生产环境RocketMq版本3.2.6 同步复制(目前生产环境采用这种方式)
先启动消费者,再启动生产者。
5线程
topic: BenchmarkTest, group: benchmark_consumer_56, suffix: true, filterType: null, expression: null
TPS: 5340 FAIL: 0 AVG(B2C) RT: 20.925 AVG(S2C) RT: 224044.760 MAX(B2C) RT: 467 MAX(S2C) RT: 226507
TPS: 5559 FAIL: 0 AVG(B2C) RT: 13.186 AVG(S2C) RT: 223855.298 MAX(B2C) RT: 603 MAX(S2C) RT: 226669
...
producer压测具体的结果可以查看附录。结果汇总成如下表格:
线程数 | 5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 |
---|---|---|---|---|---|---|---|---|
128bytes写TPS | 2576 | 9302 | 12002 | 15122 | 19867 | 17130 | 20239 | 23623 |
128bytes写的error率 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1kbytes写TPS | 1662 | 7582 | 9152 | 9838 | 13830 | 16130 | 8404 | 2369 |
1kbytes写的error率 | 0 | 0 | 0 | 0 | 0.1% | 0.1% | 0.8% | 1.69% |
500kbyte写TPS | 100 | - | - | - | - | - | - | - |
500kbyte写的error率 | 6% | - | - | - | - | - | - | - |
可以看出最后小消息TPS稳定在2万TPS左右。这个已经是目前生产环境的极限了。大消息发送频繁会出现异常。
对比测试,升级版本4.5.2 同步复制
producer压测具体的结果可以查看附录。结果汇总成如下表格:
线程数 | 5 | 10 | 15 | 20 | 25 | 30 | 35 | 40 |
---|---|---|---|---|---|---|---|---|
128bytes写TPS | 4817 | 7903 | 10038 | 11093 | 12007 | 10879 | 6809 | 5637 |
128bytes写的error率 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
1kbytes写TPS | 4040 | 5370 | 5030 | 4002 | 3362 | 2563 | 2190 | 1366 |
1kbytes写的error率 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
500kbyte写TPS | 175 | - | - | - | - | - | - | - |
500kbyte写的error率 | 1% | - | - | - | - | - | - | - |
对比测试,升级版本4.5.2 异步复制
两台压力机
topic BenchmarkTest threadCount 40 messageSize 128 keyEnable false
topic BenchmarkTest threadCount 40 messageSize 128 keyEnable false
04:31:24.072 [main] DEBUG i.n.u.i.l.InternalLoggerFactory - Using SLF4J as the default logging framework
RocketMQLog:WARN No appenders could be found for logger (io.netty.util.internal.PlatformDependent0).
RocketMQLog:WARN Please initialize the logger system properly.
Send TPS: 20548 Max RT: 557 Average RT: 1.997 Send Failed: 0 Response Failed: 0
Send TPS: 27986 Max RT: 557 Average RT: 1.427 Send Failed: 0 Response Failed: 0
Send TPS: 27157 Max RT: 557 Average RT: 1.471 Send Failed: 0 Response Failed: 0
Send TPS: 30966 Max RT: 557 Average RT: 1.290 Send Failed: 0 Response Failed: 0
Send TPS: 32334 Max RT: 557 Average RT: 1.235 Send Failed: 0 Response Failed: 0
Send TPS: 28290 Max RT: 557 Average RT: 1.412 Send Failed: 0 Response Failed: 0
Send TPS: 29130 Max RT: 557 Average RT: 1.372 Send Failed: 0 Response Failed: 0
Send TPS: 31974 Max RT: 557 Average RT: 1.249 Send Failed: 0 Response Failed: 0
Send TPS: 31052 Max RT: 557 Average RT: 1.286 Send Failed: 0 Response Failed: 0
Send TPS: 28974 Max RT: 557 Average RT: 1.367 Send Failed: 0 Response Failed: 0
topic test threadCount 40 messageSize 128 keyEnable false
topic test threadCount 40 messageSize 128 keyEnable false
04:31:37.391 [main] DEBUG i.n.u.i.l.InternalLoggerFactory - Using SLF4J as the default logging framework
RocketMQLog:WARN No appenders could be found for logger (io.netty.util.internal.PlatformDependent0).
RocketMQLog:WARN Please initialize the logger system properly.
Send TPS: 21405 Max RT: 903 Average RT: 1.942 Send Failed: 0 Response Failed: 0
Send TPS: 25909 Max RT: 903 Average RT: 1.542 Send Failed: 0 Response Failed: 0
Send TPS: 32055 Max RT: 903 Average RT: 1.246 Send Failed: 0 Response Failed: 0
Send TPS: 31571 Max RT: 903 Average RT: 1.265 Send Failed: 0 Response Failed: 0
Send TPS: 30076 Max RT: 903 Average RT: 1.328 Send Failed: 0 Response Failed: 0
Send TPS: 32059 Max RT: 903 Average RT: 1.246 Send Failed: 0 Response Failed: 0
Send TPS: 33260 Max RT: 903 Average RT: 1.201 Send Failed: 0 Response Failed: 0
Send TPS: 36836 Max RT: 903 Average RT: 1.084 Send Failed: 0 Response Failed: 0
Send TPS: 22359 Max RT: 1680 Average RT: 1.787 Send Failed: 0 Response Failed: 0
Send TPS: 29753 Max RT: 1680 Average RT: 1.343 Send Failed: 0 Response Failed: 0
Send TPS: 36455 Max RT: 1680 Average RT: 1.096 Send Failed: 0 Response Failed: 0
Send TPS: 30382 Max RT: 1680 Average RT: 1.315 Send Failed: 0 Response Failed: 0
Send TPS: 31035 Max RT: 1680 Average RT: 1.286 Send Failed: 0 Response Failed: 0
Send TPS: 28686 Max RT: 1680 Average RT: 1.393 Send Failed: 0 Response Failed: 0
Send TPS: 31151 Max RT: 1680 Average RT: 1.282 Send Failed: 0 Response Failed: 0
Send TPS: 32568 Max RT: 1680 Average RT: 1.227 Send Failed: 0 Response Failed: 0
消费者
TPS: 13974 FAIL: 0 AVG(B2C) RT: 295.560 AVG(S2C) RT: 291.630 MAX(B2C) RT: 1701 MAX(S2C) RT: 1698
TPS: 15967 FAIL: 0 AVG(B2C) RT: 249.117 AVG(S2C) RT: 245.577 MAX(B2C) RT: 1313 MAX(S2C) RT: 1308
TPS: 22275 FAIL: 0 AVG(B2C) RT: 755.954 AVG(S2C) RT: 752.267 MAX(B2C) RT: 2970 MAX(S2C) RT: 2966
TPS: 19467 FAIL: 0 AVG(B2C) RT: 516.846 AVG(S2C) RT: 513.127 MAX(B2C) RT: 2189 MAX(S2C) RT: 2186
TPS: 16526 FAIL: 0 AVG(B2C) RT: 216.683 AVG(S2C) RT: 213.183 MAX(B2C) RT: 1014 MAX(S2C) RT: 1010
TPS: 19736 FAIL: 0 AVG(B2C) RT: 748.191 AVG(S2C) RT: 744.608 MAX(B2C) RT: 3822 MAX(S2C) RT: 3819
TPS: 16378 FAIL: 0 AVG(B2C) RT: 344.954 AVG(S2C) RT: 341.350 MAX(B2C) RT: 1768 MAX(S2C) RT: 1764
TPS: 25322 FAIL: 0 AVG(B2C) RT: 2232.546 AVG(S2C) RT: 2229.024 MAX(B2C) RT: 4188 MAX(S2C) RT: 4184
TPS: 32302 FAIL: 0 AVG(B2C) RT: 2798.845 AVG(S2C) RT: 2795.327 MAX(B2C) RT: 6092 MAX(S2C) RT: 6089
TPS: 30236 FAIL: 0 AVG(B2C) RT: 3006.365 AVG(S2C) RT: 3002.848 MAX(B2C) RT: 6913 MAX(S2C) RT: 6910
TPS: 28059 FAIL: 0 AVG(B2C) RT: 3213.733 AVG(S2C) RT: 3210.176 MAX(B2C) RT: 8310 MAX(S2C) RT: 8307
TPS: 26583 FAIL: 0 AVG(B2C) RT: 3935.522 AVG(S2C) RT: 3931.988 MAX(B2C) RT: 10169 MAX(S2C) RT: 10166
TPS: 28371 FAIL: 0 AVG(B2C) RT: 4347.228 AVG(S2C) RT: 4343.741 MAX(B2C) RT: 11631 MAX(S2C) RT: 11628
TPS: 26458 FAIL: 0 AVG(B2C) RT: 4860.861 AVG(S2C) RT: 4857.361 MAX(B2C) RT: 12371 MAX(S2C) RT: 12368
TPS: 29565 FAIL: 0 AVG(B2C) RT: 5350.751 AVG(S2C) RT: 5347.217 MAX(B2C) RT: 13103 MAX(S2C) RT: 13100
TPS: 28269 FAIL: 0 AVG(B2C) RT: 5987.853 AVG(S2C) RT: 5984.317 MAX(B2C) RT: 13499 MAX(S2C) RT: 13496
TPS: 26753 FAIL: 0 AVG(B2C) RT: 6085.754 AVG(S2C) RT: 6082.192 MAX(B2C) RT: 13975 MAX(S2C) RT: 13972
TPS: 23037 FAIL: 0 AVG(B2C) RT: 6091.925 AVG(S2C) RT: 6088.336 MAX(B2C) RT: 14417 MAX(S2C) RT: 14414
TPS: 21499 FAIL: 0 AVG(B2C) RT: 5844.787 AVG(S2C) RT: 5841.198 MAX(B2C) RT: 14177 MAX(S2C) RT: 14174
TPS: 18440 FAIL: 0 AVG(B2C) RT: 5528.735 AVG(S2C) RT: 5525.165 MAX(B2C) RT: 15528 MAX(S2C) RT: 15524
TPS: 24551 FAIL: 0 AVG(B2C) RT: 6209.438 AVG(S2C) RT: 6205.958 MAX(B2C) RT: 15467 MAX(S2C) RT: 15465
根据上面我们汇总一个表格
业务 | 基准测试 最大TPS | 基准测试 最大响应时间 | 容量测试平均TPS | 容量测试平均响应时间 | 业务占比 | 业务目标TPS | 业务增长目标TPS | 目标响应时间 |
---|---|---|---|---|---|---|---|---|
写 | 33279 | 541ms | 60000 | 3ms | 50% | 500 | 1,428 | 5s |
读 | - 依赖消费者 | 不考虑 | - | 最大延时16671ms | 50% | 不考虑 | 不考虑 | 不考虑 |
从上面可以知道优化后的配置,tps远远大于我们的TPS。
7. 稳定性测试
并发64,发送和消费同时开启12小时/24小时,无异常情况。
8. 异常测试
并发20,kill掉一台broker,跑30分钟,tps波动不大即可。
9. 结果汇总分析
3.2.6版本 VS 4.5.2版本 128bytes写
并发数 | 3.2.6版本的TPS | 3.2.6版本error% | 4.5.2版本的TPS | 4.5.2版本的error% |
---|---|---|---|---|
5 | 2576 | 0 | 4817 | 0 |
10 | 9302 | 0 | 7903 | 0 |
15 | 12002 | 0 | 10038 | 0 |
20 | 15122 | 0 | 11093 | 0 |
25 | 19867 | 0 | 12007 | 0 |
30 | 17130 | 0 | 10879 | 0 |
35 | 20239 | 0 | 6809 | 0 |
40 | 23623 | 0 | 5637 | 0 |
3.2.6版本 VS 4.5.2版本 1k写
并发数 | 3.2.6版本的TPS | 3.2.6版本的error% | 4.5.2的TPS | 4.5.2的error% |
---|---|---|---|---|
5 | 1662 | 0 | 4040 | 0 |
10 | 7582 | 0 | 5370 | 0 |
15 | 9152 | 0 | 5030 | 0 |
20 | 9838 | 0 | 4002 | 0 |
25 | 13830 | 0.1% | 3362 | 0 |
30 | 16130 | 0.1% | 2563 | 0 |
35 | 8404 | 0.8% | 2190 | 0 |
40 | 2369 | 1.69% | 1366 | 0 |
3.2.6版本 VS 4.5.2版本 500bytes写
并发数 | 3.2.6版本的TPS | 3.2.6版本的error% | 4.5.2的TPS | 4.5.2的error% |
---|---|---|---|---|
5 | 100 | 6% | 175 | 1% |
结合目标的TPS
业务 | 业务目标TPS | 业务增长目标TPS |
---|---|---|
写 | 370 | 1100 |
结合以上表格可知:
- 4.5.2RocketMq同步复制目前在小消息体的情况下远远满足我们的TPS,但是大消息体还不能满足。建议大消息延长发送超时时间,或者拆分消息体。
- 4.5.2 的稳定性较3.2.6高。
建议配置
broker-a.properties
namesrvAddr=
brokerName=broker-a
brokerClusterName=BUSSMQ
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10913
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=50000000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathCommitLog=/data/rocketmq_data/store-a/commitlog/
storePathConsumerQueue=/data/rocketmq_data/store-a/consumequeue/
storePathIndex=/data/rocketmq_data/store-a/index/
abortFile=/data/rocketmq_data/store-a/abort
storeCheckpoint=/data/rocketmq_data/store-a/checkpoint
storePathRootDir=/data/rocketmq_data/store-a/
maxMessageSize=524288
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
brokerRole=SYNC_MASTER
flushDiskType=SYNC_FLUSH
checkTransactionMessageEnable=false
# 是否允许Broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
haTransferBatchSize=524288
waitTimeMillsInSendQueue=6000
osPageCacheBusyTimeOutMills=6000
# 从可读
slaveReadEnable=true
# transferMsgByHeap默认true设置为false
# Broker响应消费请求时,不必将数据重新读到堆内存再发送给客户端;
# 直接从PageCache将数据发送给客户端
transferMsgByHeap=false
broker-b.properties
brokerClusterName=BUSSMQ
brokerName=broker-b
brokerId=0
namesrvAddr=
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10913
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=50000000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathCommitLog=/data/rocketmq_data/store-b/commitlog/
storePathConsumerQueue=/data/rocketmq_data/store-b/consumequeue/
storePathIndex=/data/rocketmq_data/store-b/index/
abortFile=/data/rocketmq_data/store-b/abort
storeCheckpoint=/data/rocketmq_data/store-b/checkpoint
storePathRootDir=/data/rocketmq_data/store-b/
maxMessageSize=524288
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
brokerRole=SYNC_MASTER
flushDiskType=SYNC_FLUSH
checkTransactionMessageEnable=false
# 是否允许Broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
haTransferBatchSize=524288
# 从可读
slaveReadEnable=true
# transferMsgByHeap默认true设置为false
# Broker响应消费请求时,不必将数据重新读到堆内存再发送给客户端;
# 直接从PageCache将数据发送给客户端
transferMsgByHeap=false
broker-a-s.properties
brokerClusterName=BUSSMQ
brokerName=broker-a
brokerId=1
namesrvAddr=
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=50000000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathCommitLog=/data/rocketmq_data/store-a-s/commitlog/
storePathConsumerQueue=/data/rocketmq_data/store-a-s/consumequeue/
storePathIndex=/data/rocketmq_data/store-a-s/index/
abortFile=/data/rocketmq_data/store-a-s/abort
storeCheckpoint=/data/rocketmq_data/store-a-s/checkpoint
storePathRootDir=/data/rocketmq_data/store-a-s/
maxMessageSize=524288
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
brokerRole=SLAVE
flushDiskType=SYNC_FLUSH
checkTransactionMessageEnable=false
# 是否允许Broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
haTransferBatchSize=524288
waitTimeMillsInSendQueue=6000
osPageCacheBusyTimeOutMills=6000
# 从可读
slaveReadEnable=true
# transferMsgByHeap默认true设置为false
# Broker响应消费请求时,不必将数据重新读到堆内存再发送给客户端;
# 直接从PageCache将数据发送给客户端
transferMsgByHeap=false
broker-b-s.properties
brokerClusterName=BUSSMQ
brokerName=broker-b
brokerId=1
namesrvAddr=
defaultTopicQueueNums=4
autoCreateTopicEnable=true
autoCreateSubscriptionGroup=true
listenPort=10911
deleteWhen=04
fileReservedTime=120
mapedFileSizeCommitLog=1073741824
mapedFileSizeConsumeQueue=50000000
destroyMapedFileIntervalForcibly=120000
redeleteHangedFileInterval=120000
diskMaxUsedSpaceRatio=88
storePathCommitLog=/data/rocketmq_data/store-b-s/commitlog/
storePathConsumerQueue=/data/rocketmq_data/store-b-s/consumequeue/
storePathIndex=/data/rocketmq_data/store-b-s/index/
abortFile=/data/rocketmq_data/store-b-s/abort
storeCheckpoint=/data/rocketmq_data/store-b-s/checkpoint
storePathRootDir=/data/rocketmq_data/store-b-s/
maxMessageSize=524288
flushCommitLogLeastPages=4
flushConsumeQueueLeastPages=2
flushCommitLogThoroughInterval=10000
flushConsumeQueueThoroughInterval=60000
brokerRole=SLAVE
flushDiskType=SYNC_FLUSH
checkTransactionMessageEnable=false
# 是否允许Broker自动创建Topic,建议线下开启,线上关闭
autoCreateTopicEnable=false
# 是否允许Broker自动创建订阅组,建议线下开启,线上关闭
autoCreateSubscriptionGroup=true
slaveReadEnable=true
sendMessageThreadPoolNums=128
pullMessageThreadPoolNums=128
haTransferBatchSize=524288
waitTimeMillsInSendQueue=6000
osPageCacheBusyTimeOutMills=6000
# 从可读
slaveReadEnable=true
# transferMsgByHeap默认true设置为false
# Broker响应消费请求时,不必将数据重新读到堆内存再发送给客户端;
# 直接从PageCache将数据发送给客户端
transferMsgByHeap=false
建议手动创建Topic和消费者。
slaveReadEnable=true配合订阅组配置信息:whichBrokerWhenConsumeSlowly、brokerId的值能得到更好的性能(配置消费慢的时候,从slave节点消费,而不是主节点。)。
transientStorePoolEnable=true配置不能上,参考别的公司的,RocketMq主机内存单机直接给到45GB,我们压测过程中,加上这个参数,因为大量swap,导致很多发送失败。
附录
容量测试具体数据
当前生产环境RocketMq版本3.2.6 同步复制
1kbytes写的样本非常不稳定,我取得是中位数代表改线程的tps。
5线程 128bytes
Send TPS: 2318 Max RT: 548 Average RT: 2.153 Send Failed: 0 Response Failed: 0
Send TPS: 3499 Max RT: 548 Average RT: 1.424 Send Failed: 0 Response Failed: 0
Send TPS: 3471 Max RT: 548 Average RT: 1.437 Send Failed: 0 Response Failed: 0
Send TPS: 3409 Max RT: 548 Average RT: 1.464 Send Failed: 0 Response Failed: 0
Send TPS: 3512 Max RT: 548 Average RT: 1.421 Send Failed: 0 Response Failed: 0
Send TPS: 2968 Max RT: 548 Average RT: 1.682 Send Failed: 0 Response Failed: 0
Send TPS: 2857 Max RT: 548 Average RT: 1.752 Send Failed: 0 Response Failed: 0
Send TPS: 2576 Max RT: 548 Average RT: 1.937 Send Failed: 0 Response Failed: 0
Send TPS: 2375 Max RT: 548 Average RT: 2.101 Send Failed: 0 Response Failed: 0
Send TPS: 2137 Max RT: 548 Average RT: 2.336 Send Failed: 0 Response Failed: 0
Send TPS: 1943 Max RT: 548 Average RT: 2.569 Send Failed: 0 Response Failed: 0
Send TPS: 1964 Max RT: 548 Average RT: 2.542 Send Failed: 0 Response Failed: 0
Send TPS: 1931 Max RT: 548 Average RT: 2.586 Send Failed: 0 Response Failed: 0
Send TPS: 1988 Max RT: 548 Average RT: 2.513 Send Failed: 0 Response Failed: 0
Send TPS: 1853 Max RT: 548 Average RT: 2.695 Send Failed: 0 Response Failed: 0
Send TPS: 2034 Max RT: 548 Average RT: 2.455 Send Failed: 0 Response Failed: 0
Send TPS: 1782 Max RT: 548 Average RT: 2.800 Send Failed: 0 Response Failed: 0
Send TPS: 2106 Max RT: 548 Average RT: 2.372 Send Failed: 0 Response Failed: 0
Send TPS: 1911 Max RT: 548 Average RT: 2.614 Send Failed: 0 Response Failed: 0
Send TPS: 1841 Max RT: 548 Average RT: 2.713 Send Failed: 0 Response Failed: 0
5线程 1k
Send TPS: 1662 Max RT: 539 Average RT: 3.020 Send Failed: 0 Response Failed: 0
Send TPS: 1101 Max RT: 539 Average RT: 4.521 Send Failed: 0 Response Failed: 0
Send TPS: 1213 Max RT: 539 Average RT: 4.116 Send Failed: 0 Response Failed: 0
Send TPS: 1895 Max RT: 539 Average RT: 2.632 Send Failed: 0 Response Failed: 0
Send TPS: 2148 Max RT: 539 Average RT: 2.308 Send Failed: 0 Response Failed: 0
10线程 128bytes
Send TPS: 7609 Max RT: 324 Average RT: 1.312 Send Failed: 0 Response Failed: 0
Send TPS: 9813 Max RT: 324 Average RT: 1.017 Send Failed: 0 Response Failed: 0
Send TPS: 9848 Max RT: 324 Average RT: 1.013 Send Failed: 0 Response Failed: 0
Send TPS: 9302 Max RT: 324 Average RT: 1.073 Send Failed: 0 Response Failed: 0
Send TPS: 9798 Max RT: 324 Average RT: 1.020 Send Failed: 0 Response Failed: 0
Send TPS: 9870 Max RT: 324 Average RT: 1.011 Send Failed: 0 Response Failed: 0
Send TPS: 9928 Max RT: 324 Average RT: 1.005 Send Failed: 0 Response Failed: 0
Send TPS: 9840 Max RT: 324 Average RT: 1.014 Send Failed: 0 Response Failed: 0
10线程1k
send TPS: 7582 Max RT: 378 Average RT: 1.309 Send Failed: 0 Response Failed: 0
Send TPS: 9801 Max RT: 378 Average RT: 1.012 Send Failed: 0 Response Failed: 0
Send TPS: 7044 Max RT: 378 Average RT: 1.408 Send Failed: 0 Response Failed: 0
Send TPS: 1873 Max RT: 378 Average RT: 5.330 Send Failed: 0 Response Failed: 0
Send TPS: 1131 Max RT: 378 Average RT: 8.807 Send Failed: 0 Response Failed: 0
Send TPS: 2295 Max RT: 603 Average RT: 4.350 Send Failed: 0 Response Failed: 0
Send TPS: 2128 Max RT: 603 Average RT: 4.687 Send Failed: 0 Response Failed: 0
Send TPS: 3089 Max RT: 603 Average RT: 3.237 Send Failed: 0 Response Failed: 0
Send TPS: 8523 Max RT: 603 Average RT: 1.163 Send Failed: 0 Response Failed: 0
Send TPS: 9392 Max RT: 603 Average RT: 1.055 Send Failed: 0 Response Failed: 0
Send TPS: 9255 Max RT: 603 Average RT: 1.071 Send Failed: 0 Response Failed: 0
15线程128bytes
Send TPS: 10077 Max RT: 320 Average RT: 1.489 Send Failed: 0 Response Failed: 0
Send TPS: 12091 Max RT: 320 Average RT: 1.239 Send Failed: 0 Response Failed: 0
Send TPS: 11800 Max RT: 320 Average RT: 1.269 Send Failed: 0 Response Failed: 0
Send TPS: 11719 Max RT: 320 Average RT: 1.279 Send Failed: 0 Response Failed: 0
Send TPS: 12002 Max RT: 320 Average RT: 1.247 Send Failed: 0 Response Failed: 0
Send TPS: 13087 Max RT: 320 Average RT: 1.145 Send Failed: 0 Response Failed: 0
Send TPS: 13441 Max RT: 320 Average RT: 1.114 Send Failed: 0 Response Failed: 0
Send TPS: 13372 Max RT: 320 Average RT: 1.120 Send Failed: 0 Response Failed: 0
Send TPS: 13039 Max RT: 320 Average RT: 1.149 Send Failed: 0 Response Failed: 0
Send TPS: 13181 Max RT: 320 Average RT: 1.136 Send Failed: 0 Response Failed: 0
15线程1k
Send TPS: 2915 Max RT: 323 Average RT: 5.108 Send Failed: 0 Response Failed: 0
Send TPS: 1606 Max RT: 374 Average RT: 9.370 Send Failed: 0 Response Failed: 0
Send TPS: 1380 Max RT: 504 Average RT: 10.851 Send Failed: 0 Response Failed: 0
Send TPS: 2576 Max RT: 504 Average RT: 5.864 Send Failed: 0 Response Failed: 0
Send TPS: 1717 Max RT: 504 Average RT: 8.736 Send Failed: 0 Response Failed: 0
Send TPS: 7057 Max RT: 504 Average RT: 2.114 Send Failed: 0 Response Failed: 0
Send TPS: 11624 Max RT: 504 Average RT: 1.282 Send Failed: 0 Response Failed: 0
Send TPS: 11873 Max RT: 504 Average RT: 1.255 Send Failed: 0 Response Failed: 0
Send TPS: 4455 Max RT: 504 Average RT: 3.139 Send Failed: 0 Response Failed: 0
Send TPS: 1234 Max RT: 796 Average RT: 12.118 Send Failed: 0 Response Failed: 0
Send TPS: 1322 Max RT: 796 Average RT: 11.033 Send Failed: 0 Response Failed: 0
Send TPS: 2812 Max RT: 796 Average RT: 5.319 Send Failed: 0 Response Failed: 0
Send TPS: 3601 Max RT: 796 Average RT: 4.180 Send Failed: 0 Response Failed: 0
Send TPS: 9152 Max RT: 796 Average RT: 1.632 Send Failed: 0 Response Failed: 0
20线程128bytes
Send TPS: 11675 Max RT: 446 Average RT: 1.711 Send Failed: 0 Response Failed: 0
Send TPS: 15269 Max RT: 446 Average RT: 1.308 Send Failed: 0 Response Failed: 0
Send TPS: 14062 Max RT: 446 Average RT: 1.420 Send Failed: 0 Response Failed: 0
Send TPS: 14375 Max RT: 446 Average RT: 1.389 Send Failed: 0 Response Failed: 0
Send TPS: 15122 Max RT: 446 Average RT: 1.321 Send Failed: 0 Response Failed: 0
Send TPS: 14289 Max RT: 446 Average RT: 1.398 Send Failed: 0 Response Failed: 0
Send TPS: 14909 Max RT: 446 Average RT: 1.340 Send Failed: 0 Response Failed: 0
Send TPS: 14830 Max RT: 446 Average RT: 1.347 Send Failed: 0 Response Failed: 0
Send TPS: 15697 Max RT: 446 Average RT: 1.272 Send Failed: 0 Response Failed: 0
Send TPS: 14531 Max RT: 446 Average RT: 1.375 Send Failed: 0 Response Failed: 0
25线程128bytes
Send TPS: 12341 Max RT: 504 Average RT: 2.027 Send Failed: 0 Response Failed: 0
Send TPS: 16280 Max RT: 504 Average RT: 1.533 Send Failed: 0 Response Failed: 0
Send TPS: 17209 Max RT: 504 Average RT: 1.450 Send Failed: 0 Response Failed: 0
Send TPS: 18142 Max RT: 504 Average RT: 1.377 Send Failed: 0 Response Failed: 0
Send TPS: 16936 Max RT: 504 Average RT: 1.474 Send Failed: 0 Response Failed: 0
Send TPS: 16578 Max RT: 504 Average RT: 1.506 Send Failed: 0 Response Failed: 0
Send TPS: 17130 Max RT: 504 Average RT: 1.458 Send Failed: 0 Response Failed: 0
Send TPS: 18351 Max RT: 504 Average RT: 1.361 Send Failed: 0 Response Failed: 0
Send TPS: 16888 Max RT: 504 Average RT: 1.479 Send Failed: 0 Response Failed: 0
Send TPS: 16936 Max RT: 504 Average RT: 1.476 Send Failed: 0 Response Failed: 0
Send TPS: 17343 Max RT: 504 Average RT: 1.440 Send Failed: 0 Response Failed: 0
25线程1k
Send TPS: 1434 Max RT: 397 Average RT: 13.899 Send Failed: 0 Response Failed: 0
Send TPS: 2627 Max RT: 741 Average RT: 7.608 Send Failed: 0 Response Failed: 0
Send TPS: 3426 Max RT: 741 Average RT: 5.853 Send Failed: 0 Response Failed: 0
Send TPS: 13831 Max RT: 741 Average RT: 1.438 Send Failed: 0 Response Failed: 0
Send TPS: 14501 Max RT: 741 Average RT: 1.371 Send Failed: 0 Response Failed: 0
Send TPS: 4743 Max RT: 741 Average RT: 4.187 Send Failed: 0 Response Failed: 0
Send TPS: 887 Max RT: 1938 Average RT: 22.474 Send Failed: 0 Response Failed: 0
Send TPS: 955 Max RT: 1938 Average RT: 20.940 Send Failed: 0 Response Failed: 0
Send TPS: 1839 Max RT: 1938 Average RT: 10.864 Send Failed: 0 Response Failed: 0
Send TPS: 3617 Max RT: 1938 Average RT: 5.456 Send Failed: 0 Response Failed: 0
Send TPS: 9838 Max RT: 1938 Average RT: 2.166 Send Failed: 0 Response Failed: 0
Send TPS: 15418 Max RT: 1938 Average RT: 1.290 Send Failed: 0 Response Failed: 0
Send TPS: 9771 Max RT: 1938 Average RT: 2.034 Send Failed: 0 Response Failed: 0
Send TPS: 736 Max RT: 1938 Average RT: 10.310 Send Failed: 19 Response Failed: 0
Send TPS: 625 Max RT: 1938 Average RT: 17.505 Send Failed: 34 Response Failed: 0
30线程128bytes
Send TPS: 15948 Max RT: 545 Average RT: 1.914 Send Failed: 0 Response Failed: 0
Send TPS: 19646 Max RT: 545 Average RT: 1.526 Send Failed: 0 Response Failed: 0
Send TPS: 19663 Max RT: 545 Average RT: 1.524 Send Failed: 0 Response Failed: 0
Send TPS: 19838 Max RT: 545 Average RT: 1.511 Send Failed: 0 Response Failed: 0
Send TPS: 19867 Max RT: 545 Average RT: 1.508 Send Failed: 0 Response Failed: 0
Send TPS: 19889 Max RT: 545 Average RT: 1.507 Send Failed: 0 Response Failed: 0
Send TPS: 18919 Max RT: 545 Average RT: 1.584 Send Failed: 0 Response Failed: 0
Send TPS: 19213 Max RT: 545 Average RT: 1.560 Send Failed: 0 Response Failed: 0
Send TPS: 19708 Max RT: 545 Average RT: 1.521 Send Failed: 0 Response Failed: 0
Send TPS: 19613 Max RT: 545 Average RT: 1.528 Send Failed: 0 Response Failed: 0
30线程1k
Send TPS: 2871 Max RT: 378 Average RT: 10.439 Send Failed: 0 Response Failed: 0
Send TPS: 2519 Max RT: 626 Average RT: 11.872 Send Failed: 0 Response Failed: 0
Send TPS: 2860 Max RT: 687 Average RT: 10.944 Send Failed: 0 Response Failed: 0
Send TPS: 3294 Max RT: 860 Average RT: 9.126 Send Failed: 0 Response Failed: 0
Send TPS: 16212 Max RT: 860 Average RT: 1.849 Send Failed: 0 Response Failed: 0
Send TPS: 11095 Max RT: 860 Average RT: 2.692 Send Failed: 0 Response Failed: 0
Send TPS: 13094 Max RT: 915 Average RT: 2.284 Send Failed: 29 Response Failed: 0
Send TPS: 15724 Max RT: 915 Average RT: 1.895 Send Failed: 29 Response Failed: 0
Send TPS: 17374 Max RT: 915 Average RT: 1.717 Send Failed: 29 Response Failed: 0
Send TPS: 16252 Max RT: 1892 Average RT: 1.836 Send Failed: 59 Response Failed: 0
Send TPS: 13310 Max RT: 1927 Average RT: 2.244 Send Failed: 89 Response Failed: 0
Send TPS: 15141 Max RT: 1927 Average RT: 1.963 Send Failed: 89 Response Failed: 0
Send TPS: 3100 Max RT: 2671 Average RT: 9.426 Send Failed: 134 Response Failed: 0
Send TPS: 2028 Max RT: 2671 Average RT: 14.738 Send Failed: 134 Response Failed: 0
Send TPS: 2148 Max RT: 2671 Average RT: 14.094 Send Failed: 134 Response Failed: 0
35线程128bytes
Send TPS: 13132 Max RT: 385 Average RT: 2.664 Send Failed: 0 Response Failed: 0
Send TPS: 17408 Max RT: 385 Average RT: 2.008 Send Failed: 0 Response Failed: 0
Send TPS: 17180 Max RT: 385 Average RT: 2.036 Send Failed: 0 Response Failed: 0
Send TPS: 18265 Max RT: 385 Average RT: 1.915 Send Failed: 0 Response Failed: 0
Send TPS: 17922 Max RT: 385 Average RT: 1.951 Send Failed: 0 Response Failed: 0
Send TPS: 16999 Max RT: 385 Average RT: 2.059 Send Failed: 0 Response Failed: 0
Send TPS: 17589 Max RT: 385 Average RT: 1.988 Send Failed: 0 Response Failed: 0
Send TPS: 20879 Max RT: 385 Average RT: 1.675 Send Failed: 0 Response Failed: 0
Send TPS: 21033 Max RT: 385 Average RT: 1.662 Send Failed: 0 Response Failed: 0
Send TPS: 17163 Max RT: 385 Average RT: 2.048 Send Failed: 0 Response Failed: 0
Send TPS: 16745 Max RT: 385 Average RT: 2.088 Send Failed: 0 Response Failed: 0
Send TPS: 15947 Max RT: 385 Average RT: 2.193 Send Failed: 0 Response Failed: 0
Send TPS: 17833 Max RT: 385 Average RT: 1.961 Send Failed: 0 Response Failed: 0
Send TPS: 17861 Max RT: 385 Average RT: 1.958 Send Failed: 0 Response Failed: 0
35线程1k
Send TPS: 8404 Max RT: 594 Average RT: 4.141 Send Failed: 0 Response Failed: 0
Send TPS: 466 Max RT: 2664 Average RT: 28.040 Send Failed: 33 Response Failed: 0
Send TPS: 982 Max RT: 2664 Average RT: 35.168 Send Failed: 33 Response Failed: 0
Send TPS: 1555 Max RT: 2664 Average RT: 23.172 Send Failed: 33 Response Failed: 0
Send TPS: 3007 Max RT: 2664 Average RT: 11.505 Send Failed: 33 Response Failed: 0
Send TPS: 4966 Max RT: 2664 Average RT: 7.057 Send Failed: 33 Response Failed: 0
Send TPS: 1036 Max RT: 2704 Average RT: 33.800 Send Failed: 33 Response Failed: 0
Send TPS: 1010 Max RT: 2704 Average RT: 34.694 Send Failed: 33 Response Failed: 0
Send TPS: 1163 Max RT: 2704 Average RT: 30.031 Send Failed: 33 Response Failed: 0
Send TPS: 524 Max RT: 2704 Average RT: 66.587 Send Failed: 33 Response Failed: 0
Send TPS: 755 Max RT: 2704 Average RT: 46.457 Send Failed: 33 Response Failed: 0
Send TPS: 892 Max RT: 2704 Average RT: 39.167 Send Failed: 33 Response Failed: 0
Send TPS: 1814 Max RT: 2704 Average RT: 19.400 Send Failed: 33 Response Failed: 0
40线程128bytes
Send TPS: 18309 Max RT: 498 Average RT: 2.206 Send Failed: 0 Response Failed: 0
Send TPS: 19705 Max RT: 498 Average RT: 2.028 Send Failed: 0 Response Failed: 0
Send TPS: 18701 Max RT: 498 Average RT: 2.137 Send Failed: 0 Response Failed: 0
Send TPS: 20239 Max RT: 498 Average RT: 1.974 Send Failed: 0 Response Failed: 0
Send TPS: 22104 Max RT: 498 Average RT: 1.808 Send Failed: 0 Response Failed: 0
Send TPS: 23623 Max RT: 498 Average RT: 1.689 Send Failed: 0 Response Failed: 0
Send TPS: 24717 Max RT: 498 Average RT: 1.616 Send Failed: 0 Response Failed: 0
Send TPS: 23753 Max RT: 498 Average RT: 1.682 Send Failed: 0 Response Failed: 0
Send TPS: 23865 Max RT: 498 Average RT: 1.674 Send Failed: 0 Response Failed: 0
Send TPS: 25048 Max RT: 498 Average RT: 1.585 Send Failed: 0 Response Failed: 0
Send TPS: 23372 Max RT: 498 Average RT: 1.704 Send Failed: 0 Response Failed: 0
Send TPS: 24694 Max RT: 498 Average RT: 1.618 Send Failed: 0 Response Failed: 0
40线程1k
Send TPS: 1255 Max RT: 2330 Average RT: 32.111 Send Failed: 0 Response Failed: 0
Send TPS: 909 Max RT: 2330 Average RT: 43.964 Send Failed: 0 Response Failed: 0
Send TPS: 1163 Max RT: 2330 Average RT: 34.451 Send Failed: 0 Response Failed: 0
Send TPS: 2230 Max RT: 2330 Average RT: 17.976 Send Failed: 0 Response Failed: 0
Send TPS: 2369 Max RT: 2330 Average RT: 16.996 Send Failed: 0 Response Failed: 0
Send TPS: 1786 Max RT: 2330 Average RT: 22.398 Send Failed: 0 Response Failed: 0
Send TPS: 2342 Max RT: 2330 Average RT: 17.082 Send Failed: 0 Response Failed: 0
Send TPS: 3038 Max RT: 2330 Average RT: 13.164 Send Failed: 0 Response Failed: 0
Send TPS: 2356 Max RT: 2330 Average RT: 16.990 Send Failed: 0 Response Failed: 0
Send TPS: 1967 Max RT: 2330 Average RT: 20.299 Send Failed: 0 Response Failed: 0
Send TPS: 1147 Max RT: 2330 Average RT: 23.464 Send Failed: 37 Response Failed: 0
Send TPS: 1023 Max RT: 2330 Average RT: 29.976 Send Failed: 40 Response Failed: 0
Send TPS: 1869 Max RT: 2330 Average RT: 21.395 Send Failed: 40 Response Failed: 0
Send TPS: 945 Max RT: 2330 Average RT: 42.190 Send Failed: 40 Response Failed: 0
Send TPS: 1639 Max RT: 2330 Average RT: 24.605 Send Failed: 40 Response Failed: 0
5线程500k
Send TPS: 160 Max RT: 473 Average RT: 28.779 Send Failed: 0 Response Failed: 0
Send TPS: 171 Max RT: 499 Average RT: 22.621 Send Failed: 0 Response Failed: 0
Send TPS: 112 Max RT: 1511 Average RT: 40.452 Send Failed: 4 Response Failed: 0
Send TPS: 80 Max RT: 1860 Average RT: 60.799 Send Failed: 4 Response Failed: 0
Send TPS: 46 Max RT: 1860 Average RT: 104.282 Send Failed: 4 Response Failed: 0
Send TPS: 46 Max RT: 1860 Average RT: 103.236 Send Failed: 4 Response Failed: 0
Send TPS: 49 Max RT: 1860 Average RT: 96.000 Send Failed: 6 Response Failed: 0
Send TPS: 94 Max RT: 1860 Average RT: 49.370 Send Failed: 6 Response Failed: 0
对比测试,升级版本4.5.2 同步复制
5线程128bytes
Send TPS: 4767 Max RT: 405 Average RT: 1.046 Send Failed: 0 Response Failed: 0
Send TPS: 4517 Max RT: 405 Average RT: 1.105 Send Failed: 0 Response Failed: 0
Send TPS: 3402 Max RT: 405 Average RT: 1.468 Send Failed: 0 Response Failed: 0
Send TPS: 4526 Max RT: 405 Average RT: 1.102 Send Failed: 0 Response Failed: 0
Send TPS: 5014 Max RT: 405 Average RT: 0.996 Send Failed: 0 Response Failed: 0
Send TPS: 4907 Max RT: 405 Average RT: 1.017 Send Failed: 0 Response Failed: 0
Send TPS: 4817 Max RT: 405 Average RT: 1.036 Send Failed: 0 Response Failed: 0
Send TPS: 5079 Max RT: 405 Average RT: 0.983 Send Failed: 0 Response Failed: 0
Send TPS: 5025 Max RT: 405 Average RT: 0.992 Send Failed: 0 Response Failed: 0
Send TPS: 4822 Max RT: 405 Average RT: 1.034 Send Failed: 0 Response Failed: 0
...
10线程128bytes
Send TPS: 7576 Max RT: 383 Average RT: 1.317 Send Failed: 0 Response Failed: 0
Send TPS: 8036 Max RT: 383 Average RT: 1.241 Send Failed: 0 Response Failed: 0
Send TPS: 7903 Max RT: 383 Average RT: 1.263 Send Failed: 0 Response Failed: 0
Send TPS: 7302 Max RT: 383 Average RT: 1.367 Send Failed: 0 Response Failed: 0
Send TPS: 8033 Max RT: 383 Average RT: 1.242 Send Failed: 0 Response Failed: 0
Send TPS: 7667 Max RT: 383 Average RT: 1.303 Send Failed: 0 Response Failed: 0
Send TPS: 7721 Max RT: 383 Average RT: 1.292 Send Failed: 0 Response Failed: 0
Send TPS: 7997 Max RT: 383 Average RT: 1.247 Send Failed: 0 Response Failed: 0
...
15线程128bytes
Send TPS: 9081 Max RT: 492 Average RT: 1.651 Send Failed: 0 Response Failed: 0
Send TPS: 10038 Max RT: 492 Average RT: 1.491 Send Failed: 0 Response Failed: 0
Send TPS: 10386 Max RT: 492 Average RT: 1.442 Send Failed: 0 Response Failed: 0
Send TPS: 10895 Max RT: 492 Average RT: 1.375 Send Failed: 0 Response Failed: 0
Send TPS: 9983 Max RT: 492 Average RT: 1.500 Send Failed: 0 Response Failed: 0
Send TPS: 10931 Max RT: 492 Average RT: 1.370 Send Failed: 0 Response Failed: 0
Send TPS: 10576 Max RT: 492 Average RT: 1.415 Send Failed: 0 Response Failed: 0
Send TPS: 10187 Max RT: 492 Average RT: 1.470 Send Failed: 0 Response Failed: 0
Send TPS: 11088 Max RT: 492 Average RT: 1.351 Send Failed: 0 Response Failed: 0
...
20线程128bytes
Send TPS: 11337 Max RT: 558 Average RT: 1.761 Send Failed: 0 Response Failed: 0
Send TPS: 11009 Max RT: 558 Average RT: 1.814 Send Failed: 0 Response Failed: 0
Send TPS: 12781 Max RT: 558 Average RT: 1.563 Send Failed: 0 Response Failed: 0
Send TPS: 12421 Max RT: 558 Average RT: 1.608 Send Failed: 0 Response Failed: 0
Send TPS: 11343 Max RT: 558 Average RT: 1.760 Send Failed: 0 Response Failed: 0
Send TPS: 11338 Max RT: 558 Average RT: 1.761 Send Failed: 0 Response Failed: 0
Send TPS: 11093 Max RT: 558 Average RT: 1.801 Send Failed: 0 Response Failed: 0
Send TPS: 10126 Max RT: 558 Average RT: 1.973 Send Failed: 0 Response Failed: 0
...
25线程128bytes
Send TPS: 10825 Max RT: 511 Average RT: 2.298 Send Failed: 0 Response Failed: 0
Send TPS: 10653 Max RT: 511 Average RT: 2.344 Send Failed: 0 Response Failed: 0
Send TPS: 10938 Max RT: 511 Average RT: 2.282 Send Failed: 0 Response Failed: 0
Send TPS: 12007 Max RT: 511 Average RT: 2.081 Send Failed: 0 Response Failed: 0
Send TPS: 10879 Max RT: 511 Average RT: 2.295 Send Failed: 0 Response Failed: 0
Send TPS: 10689 Max RT: 511 Average RT: 2.332 Send Failed: 0 Response Failed: 0
...
30线程128bytes
Send TPS: 10825 Max RT: 511 Average RT: 2.298 Send Failed: 0 Response Failed: 0
Send TPS: 10653 Max RT: 511 Average RT: 2.344 Send Failed: 0 Response Failed: 0
Send TPS: 10938 Max RT: 511 Average RT: 2.282 Send Failed: 0 Response Failed: 0
Send TPS: 12007 Max RT: 511 Average RT: 2.081 Send Failed: 0 Response Failed: 0
Send TPS: 10879 Max RT: 511 Average RT: 2.295 Send Failed: 0 Response Failed: 0
Send TPS: 10689 Max RT: 511 Average RT: 2.332 Send Failed: 0 Response Failed: 0
...
35线程128bytes
Send TPS: 6720 Max RT: 699 Average RT: 5.398 Send Failed: 0 Response Failed: 0
Send TPS: 5812 Max RT: 699 Average RT: 6.005 Send Failed: 0 Response Failed: 0
Send TPS: 6809 Max RT: 699 Average RT: 5.144 Send Failed: 0 Response Failed: 0
Send TPS: 5493 Max RT: 699 Average RT: 6.473 Send Failed: 0 Response Failed: 0
Send TPS: 5392 Max RT: 699 Average RT: 6.516 Send Failed: 0 Response Failed: 0
Send TPS: 6656 Max RT: 699 Average RT: 5.259 Send Failed: 0 Response Failed: 0
Send TPS: 5202 Max RT: 699 Average RT: 6.698 Send Failed: 0 Response Failed: 0
Send TPS: 6152 Max RT: 699 Average RT: 5.706 Send Failed: 0 Response Failed: 0
Send TPS: 6840 Max RT: 699 Average RT: 5.109 Send Failed: 0 Response Failed: 0
...
40线程128bytes
Send TPS: 6198 Max RT: 591 Average RT: 6.528 Send Failed: 0 Response Failed: 0
Send TPS: 4105 Max RT: 591 Average RT: 9.684 Send Failed: 0 Response Failed: 0
Send TPS: 5073 Max RT: 591 Average RT: 7.894 Send Failed: 0 Response Failed: 0
Send TPS: 5637 Max RT: 591 Average RT: 7.075 Send Failed: 0 Response Failed: 0
Send TPS: 6024 Max RT: 591 Average RT: 6.641 Send Failed: 0 Response Failed: 0
Send TPS: 6692 Max RT: 591 Average RT: 6.008 Send Failed: 0 Response Failed: 0
Send TPS: 5801 Max RT: 591 Average RT: 6.900 Send Failed: 0 Response Failed: 0
...
5线程1k
Send TPS: 3213 Max RT: 270 Average RT: 1.542 Send Failed: 0 Response Failed: 0
Send TPS: 4015 Max RT: 270 Average RT: 1.231 Send Failed: 0 Response Failed: 0
Send TPS: 4134 Max RT: 270 Average RT: 1.197 Send Failed: 0 Response Failed: 0
Send TPS: 4395 Max RT: 270 Average RT: 1.125 Send Failed: 0 Response Failed: 0
Send TPS: 4285 Max RT: 270 Average RT: 1.157 Send Failed: 0 Response Failed: 0
Send TPS: 4143 Max RT: 270 Average RT: 1.196 Send Failed: 0 Response Failed: 0
Send TPS: 4040 Max RT: 270 Average RT: 1.227 Send Failed: 0 Response Failed: 0
...
10线程1k
Send TPS: 5486 Max RT: 326 Average RT: 1.811 Send Failed: 0 Response Failed: 0
Send TPS: 6218 Max RT: 326 Average RT: 1.597 Send Failed: 0 Response Failed: 0
Send TPS: 6136 Max RT: 326 Average RT: 1.619 Send Failed: 0 Response Failed: 0
Send TPS: 5446 Max RT: 326 Average RT: 1.822 Send Failed: 0 Response Failed: 0
Send TPS: 5370 Max RT: 326 Average RT: 1.851 Send Failed: 0 Response Failed: 0
Send TPS: 4767 Max RT: 326 Average RT: 2.086 Send Failed: 0 Response Failed: 0
Send TPS: 4817 Max RT: 326 Average RT: 2.066 Send Failed: 0 Response Failed: 0
Send TPS: 4901 Max RT: 326 Average RT: 2.030 Send Failed: 0 Response Failed: 0
Send TPS: 4869 Max RT: 326 Average RT: 2.045 Send Failed: 0 Response Failed: 0
...
15线程1k
Send TPS: 5021 Max RT: 314 Average RT: 2.976 Send Failed: 0 Response Failed: 0
Send TPS: 4540 Max RT: 314 Average RT: 3.296 Send Failed: 0 Response Failed: 0
Send TPS: 4523 Max RT: 314 Average RT: 3.301 Send Failed: 0 Response Failed: 0
Send TPS: 4153 Max RT: 314 Average RT: 3.592 Send Failed: 0 Response Failed: 0
Send TPS: 4123 Max RT: 314 Average RT: 3.627 Send Failed: 0 Response Failed: 0
Send TPS: 4643 Max RT: 314 Average RT: 3.211 Send Failed: 0 Response Failed: 0
Send TPS: 4777 Max RT: 314 Average RT: 3.126 Send Failed: 0 Response Failed: 0
Send TPS: 5030 Max RT: 314 Average RT: 2.969 Send Failed: 0 Response Failed: 0
Send TPS: 4159 Max RT: 314 Average RT: 3.598 Send Failed: 0 Response Failed: 0
...
20线程1k
Send TPS: 3248 Max RT: 400 Average RT: 6.115 Send Failed: 0 Response Failed: 0
Send TPS: 2868 Max RT: 400 Average RT: 6.964 Send Failed: 0 Response Failed: 0
Send TPS: 1825 Max RT: 400 Average RT: 10.937 Send Failed: 0 Response Failed: 0
Send TPS: 4002 Max RT: 400 Average RT: 4.975 Send Failed: 0 Response Failed: 0
Send TPS: 2036 Max RT: 400 Average RT: 9.799 Send Failed: 0 Response Failed: 0
Send TPS: 2748 Max RT: 400 Average RT: 7.271 Send Failed: 0 Response Failed: 0
Send TPS: 2921 Max RT: 400 Average RT: 6.850 Send Failed: 0 Response Failed: 0
Send TPS: 2668 Max RT: 400 Average RT: 7.464 Send Failed: 0 Response Failed: 0
...
25线程1k
Send TPS: 3248 Max RT: 400 Average RT: 6.115 Send Failed: 0 Response Failed: 0
Send TPS: 4002 Max RT: 400 Average RT: 4.975 Send Failed: 0 Response Failed: 0
Send TPS: 2036 Max RT: 400 Average RT: 9.799 Send Failed: 0 Response Failed: 0
Send TPS: 2748 Max RT: 400 Average RT: 7.271 Send Failed: 0 Response Failed: 0
Send TPS: 2921 Max RT: 400 Average RT: 6.850 Send Failed: 0 Response Failed: 0
Send TPS: 2668 Max RT: 400 Average RT: 7.464 Send Failed: 0 Response Failed: 0
Send TPS: 3362 Max RT: 400 Average RT: 5.936 Send Failed: 0 Response Failed: 0
Send TPS: 4830 Max RT: 400 Average RT: 4.137 Send Failed: 0 Response Failed: 0
...
30线程1k
Send TPS: 2015 Max RT: 391 Average RT: 12.388 Send Failed: 0 Response Failed: 0
Send TPS: 2798 Max RT: 391 Average RT: 8.891 Send Failed: 0 Response Failed: 0
Send TPS: 1788 Max RT: 391 Average RT: 14.082 Send Failed: 0 Response Failed: 0
Send TPS: 2912 Max RT: 391 Average RT: 8.565 Send Failed: 0 Response Failed: 0
Send TPS: 2999 Max RT: 391 Average RT: 8.367 Send Failed: 0 Response Failed: 0
Send TPS: 2985 Max RT: 430 Average RT: 10.019 Send Failed: 0 Response Failed: 0
Send TPS: 2676 Max RT: 430 Average RT: 11.220 Send Failed: 0 Response Failed: 0
Send TPS: 2563 Max RT: 430 Average RT: 11.648 Send Failed: 0 Response Failed: 0
Send TPS: 1233 Max RT: 430 Average RT: 24.321 Send Failed: 0 Response Failed: 0
Send TPS: 1272 Max RT: 430 Average RT: 23.563 Send Failed: 0 Response Failed: 0
Send TPS: 1849 Max RT: 430 Average RT: 16.212 Send Failed: 0 Response Failed: 0
Send TPS: 2167 Max RT: 430 Average RT: 13.822 Send Failed: 0 Response Failed: 0
...
35线程1k
Send TPS: 2848 Max RT: 514 Average RT: 12.367 Send Failed: 0 Response Failed: 0
Send TPS: 3128 Max RT: 514 Average RT: 11.169 Send Failed: 0 Response Failed: 0
Send TPS: 2577 Max RT: 514 Average RT: 13.531 Send Failed: 0 Response Failed: 0
Send TPS: 2190 Max RT: 841 Average RT: 15.909 Send Failed: 0 Response Failed: 0
Send TPS: 1726 Max RT: 841 Average RT: 20.182 Send Failed: 0 Response Failed: 0
Send TPS: 1543 Max RT: 841 Average RT: 22.590 Send Failed: 0 Response Failed: 0
Send TPS: 1258 Max RT: 841 Average RT: 27.854 Send Failed: 0 Response Failed: 0
Send TPS: 2044 Max RT: 841 Average RT: 17.065 Send Failed: 0 Response Failed: 0
Send TPS: 1328 Max RT: 841 Average RT: 26.399 Send Failed: 0 Response Failed: 0
Send TPS: 1123 Max RT: 841 Average RT: 31.242 Send Failed: 0 Response Failed: 0
...
40线程1k
Send TPS: 2148 Max RT: 648 Average RT: 18.958 Send Failed: 0 Response Failed: 0
Send TPS: 987 Max RT: 648 Average RT: 39.700 Send Failed: 0 Response Failed: 0
Send TPS: 907 Max RT: 648 Average RT: 44.300 Send Failed: 0 Response Failed: 0
Send TPS: 847 Max RT: 648 Average RT: 47.374 Send Failed: 0 Response Failed: 0
Send TPS: 857 Max RT: 648 Average RT: 47.472 Send Failed: 0 Response Failed: 0
Send TPS: 865 Max RT: 648 Average RT: 46.189 Send Failed: 0 Response Failed: 0
Send TPS: 870 Max RT: 872 Average RT: 45.820 Send Failed: 0 Response Failed: 0
Send TPS: 2006 Max RT: 872 Average RT: 20.351 Send Failed: 0 Response Failed: 0
Send TPS: 2016 Max RT: 872 Average RT: 19.754 Send Failed: 0 Response Failed: 0
Send TPS: 824 Max RT: 872 Average RT: 48.657 Send Failed: 0 Response Failed: 0
Send TPS: 1083 Max RT: 872 Average RT: 36.937 Send Failed: 0 Response Failed: 0
Send TPS: 703 Max RT: 872 Average RT: 56.395 Send Failed: 0 Response Failed: 0
Send TPS: 768 Max RT: 872 Average RT: 52.340 Send Failed: 0 Response Failed: 0
Send TPS: 1238 Max RT: 872 Average RT: 32.478 Send Failed: 0 Response Failed: 0
Send TPS: 1366 Max RT: 872 Average RT: 29.381 Send Failed: 0 Response Failed: 0
Send TPS: 2145 Max RT: 872 Average RT: 18.888 Send Failed: 0 Response Failed: 0
...
5线程500k
Send TPS: 169 Max RT: 332 Average RT: 26.225 Send Failed: 0 Response Failed: 0
Send TPS: 167 Max RT: 761 Average RT: 25.069 Send Failed: 0 Response Failed: 0
Send TPS: 144 Max RT: 1866 Average RT: 19.866 Send Failed: 2 Response Failed: 0
Send TPS: 154 Max RT: 2481 Average RT: 33.343 Send Failed: 2 Response Failed: 0
Send TPS: 178 Max RT: 2481 Average RT: 24.602 Send Failed: 2 Response Failed: 0
Send TPS: 182 Max RT: 2481 Average RT: 24.019 Send Failed: 2 Response Failed: 0
Send TPS: 183 Max RT: 2481 Average RT: 23.757 Send Failed: 2 Response Failed: 0
Send TPS: 192 Max RT: 2481 Average RT: 22.397 Send Failed: 2 Response Failed: 0
Send TPS: 171 Max RT: 2481 Average RT: 25.646 Send Failed: 2 Response Failed: 0
Send TPS: 175 Max RT: 2481 Average RT: 24.941 Send Failed: 2 Response Failed: 0
Send TPS: 192 Max RT: 2481 Average RT: 22.453 Send Failed: 2 Response Failed: 0
Send TPS: 185 Max RT: 2481 Average RT: 23.508 Send Failed: 2 Response Failed: 0
Send TPS: 164 Max RT: 2481 Average RT: 26.709 Send Failed: 2 Response Failed: 0
Send TPS: 180 Max RT: 2481 Average RT: 24.391 Send Failed: 2 Response Failed: 0
Send TPS: 174 Max RT: 2481 Average RT: 25.303 Send Failed: 2 Response Failed: 0
Send TPS: 178 Max RT: 2481 Average RT: 24.617 Send Failed: 2 Response Failed: 0
Send TPS: 190 Max RT: 2481 Average RT: 22.641 Send Failed: 2 Response Failed: 0
...
更多推荐
所有评论(0)