本文介绍 Redis 6.2.5 启用 TLS 功能后,在不同测试场景下的测试结果。

测试环境

测试环境信息数 说明

地域和可用区

所有测试均在北京三区的可用区 B 中完成。

Redis 集群架构

默认架构, 3 分片, 每分片 1 副本, 共 6 节点。

分片实例规格

本次测试以通用型 e2基础型规格为例。

  • 单线程测试环境基础型2核机型

  • 多线程测试环境基础型8核机型

  • 单线程生产环境通用型e2 2核机型

  • 多线程生产环境通用型e2 8核机型

部署压测工具的机器

云服务器实例规格: ec3ne.16xlarge.r2,类型:网络增强计算型ec3ne,64核CPU,128G内存

测试命令

详细操作方法请参见测试方法

本次测试场景:启动 32 个线程、512 个连接、100000 个 Key 的取值范围,测试使用 TLS 端口连接并执行 SET 及 GET 命令的性能。

./src/redis-benchmark -h <IP> -p 6479 -n 10000000 -r 100000 -c 512 -t get,set -d 64 --threads 32 --cluster --tls --cert ./tests/tls/redis.crt --key ./tests/tls/redis.key --cacert ./tests/tls/ca.crt

测试指标

指标 说明

QPS

集群每秒处理的读写操作数,单位为次/秒。

测试结果

GET 测试结果

Value 长度 QPS (次/秒) 分片实例规格

单线程测试环境

64 字节

143385.62

2核16G

128 字节

143998.84

2核16G

256 字节

143812.47

2核16G

1024 字节

144379.31

2核16G

多线程测试环境

64 字节

503626.09

8核16G

128 字节

497636.25

8核16G

256 字节

500951.81

8核16G

1024 字节

497611.44

8核16G

单线程生产环境

64 字节

402965.84

2核16G

128 字节

405663.06

2核16G

256 字节

406934.16

2核16G

1024 字节

405794.75

2核16G

多线程生产环境

64 字节

879894.44

8核16G

128 字节

901632.00

8核16G

256 字节

866250.88

8核16G

1024 字节

901469.38

8核16G

SET 测试结果

Value 长度 QPS (次/秒) 分片实例规格

单线程测试环境

64 字节

126380.71

2核16G

128 字节

123236.19

2核16G

256 字节

119487.16

2核16G

1024 字节

67140.23

2核16G

多线程测试环境

64 字节

357232.16

8核16G

128 字节

334470.53

8核16G

256 字节

242154.20

8核16G

1024 字节

71521.55

8核16G

单线程生产环境

64 字节

352721.25

2核16G

128 字节

355214.53

2核16G

256 字节

351951.56

2核16G

1024 字节

321047.91

2核16G

多线程生产环境

64 字节

567794.69

8核16G

128 字节

503372.62

8核16G

256 字节

473843.81

8核16G

1024 字节

263685.28

8核16G