Redis性能测试

本文涉及的产品
云数据库 Redis 版,社区版 2GB
推荐场景:
搭建游戏排行榜
简介: Redis性能测试

前言


都说 Redis 性能极致,实际到底怎么样呢?我们借助 redis-benchmark 来测试一下。redis-benchmarkRedis 自带的测试工具,简直不要太舒服。


性能测试


快速测试


测试命令:redis-benchmark


[root@RLKJ-BT ~]# redis-benchmark
====== PING_INLINE ======
  100000 requests completed in 1.66 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
98.94% <= 1 milliseconds
99.55% <= 2 milliseconds
99.60% <= 5 milliseconds
99.61% <= 6 milliseconds
99.65% <= 10 milliseconds
99.87% <= 11 milliseconds
99.99% <= 12 milliseconds
100.00% <= 12 milliseconds
60240.96 requests per second
====== PING_BULK ======
  100000 requests completed in 1.53 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.25% <= 1 milliseconds
99.94% <= 2 milliseconds
100.00% <= 2 milliseconds
65146.58 requests per second
====== SET ======
  100000 requests completed in 1.63 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.24% <= 1 milliseconds
99.51% <= 2 milliseconds
99.64% <= 3 milliseconds
99.65% <= 5 milliseconds
99.65% <= 6 milliseconds
99.70% <= 10 milliseconds
99.87% <= 11 milliseconds
100.00% <= 11 milliseconds
61462.82 requests per second
====== GET ======
  100000 requests completed in 1.65 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
98.37% <= 1 milliseconds
99.40% <= 2 milliseconds
99.55% <= 8 milliseconds
99.60% <= 10 milliseconds
99.72% <= 11 milliseconds
99.98% <= 12 milliseconds
100.00% <= 12 milliseconds
60422.96 requests per second
########  省略  ###########
====== SADD ======
  100000 requests completed in 1.58 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
99.15% <= 1 milliseconds
99.86% <= 2 milliseconds
99.90% <= 12 milliseconds
99.95% <= 16 milliseconds
99.99% <= 17 milliseconds
100.00% <= 17 milliseconds
63371.36 requests per second
====== HSET ======
  100000 requests completed in 1.65 seconds
  50 parallel clients
  3 bytes payload
  keep alive: 1
98.95% <= 1 milliseconds
99.54% <= 2 milliseconds
99.65% <= 5 milliseconds
99.67% <= 6 milliseconds
99.70% <= 10 milliseconds
99.91% <= 11 milliseconds
100.00% <= 11 milliseconds
60642.81 requests per second
########  省略  ###########
[root@RLKJ-BT ~]#
复制代码


如上,快速测试出的结果非常全,经过删减还有很多,我们比较关注的就是 100%的时延和 QPS。从上面的结果中我们大致能够得出被测 redis 的时延都在十几毫秒,QPS 都在 6W 多,性能还是很好的。


精简测试


对于快速测试的结果,我们需要去分析挑选那我们需要的数据,其实 redis-benchmark 已经为我们提供了精简测试模式,我们是同-t 参数指定需要测试的操作类型就可以实现对指定操作的性能进行测试。


例:对 setget 进行 1000000 个请求的性能测试。


[root@RLKJ-BT ~]# redis-benchmark -t set,get -n 1000000 -q
SET: 62774.64 requests per second
GET: 63195.14 requests per second
[root@RLKJ-BT ~]#
复制代码


如上,我们已经拿到了非常精简的数据,我们可以直接将其放到我们的测试报告中。


Pipline 测试


针对业务场景,我们可以通过 pipline 来模拟业务场景,批量提交命令给 redis server,从而提升性能。


例:我们模拟每个 pipline 执行 10 次命令。


[root@RLKJ-BT ~]# redis-benchmark -t set,get -n 1000000 -q -P 10
SET: 446229.38 requests per second
GET: 450450.44 requests per second
[root@RLKJ-BT ~]#
复制代码


同样的请求数,你会发现单次执行多条命令的性能数据要比单次执行一条命令的性能数据高出 7 倍多。

相关实践学习
基于Redis实现在线游戏积分排行榜
本场景将介绍如何基于Redis数据库实现在线游戏中的游戏玩家积分排行榜功能。
云数据库 Redis 版使用教程
云数据库Redis版是兼容Redis协议标准的、提供持久化的内存数据库服务,基于高可靠双机热备架构及可无缝扩展的集群架构,满足高读写性能场景及容量需弹性变配的业务需求。 产品详情:https://www.aliyun.com/product/kvstore &nbsp; &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
相关文章
|
5月前
|
NoSQL 测试技术 Redis
Redis【性能 02】Redis-5.0.14伪集群和Docker集群搭建及延迟和性能测试(均无法提升性能)
Redis【性能 02】Redis-5.0.14伪集群和Docker集群搭建及延迟和性能测试(均无法提升性能)
155 0
|
5月前
|
NoSQL 测试技术 Redis
Redis【性能 01】Redis 5.x 6.x 7.x 共5个不同版本延迟及性能测试对比分析(单机版默认配置)
Redis【性能 01】Redis 5.x 6.x 7.x 共5个不同版本延迟及性能测试对比分析(单机版默认配置)
216 0
|
6月前
|
存储 缓存 NoSQL
Redis性能测试实操记录与分析
通过对Redis性能测试的实操记录和分析,我们对Redis的性能表现有了更深入的了解。这种性能测试可以帮助我们评估Redis在不同负载下的表现,并根据测试结果采取相应的优化策略,以确保Redis在实际应用中能够满足性能需求,并提供高速的数据存储和缓存解决方案。
130 0
|
NoSQL 测试技术 Redis
redis 发布订阅 性能测试
redis 发布订阅 性能测试
179 0
|
NoSQL 测试技术 Redis
redis替代品:ssdb性能压测实战~
redis替代品:ssdb性能压测实战~
|
缓存 NoSQL 关系型数据库
【Redis】(一)SpringBoot 整合Redis缓存并使用Postman+JMeter进行性能测试
【Redis】(一)SpringBoot 整合Redis缓存并使用Postman+JMeter进行性能测试
586 0
【Redis】(一)SpringBoot 整合Redis缓存并使用Postman+JMeter进行性能测试
|
NoSQL Java fastjson
实战Redis序列化性能测试(Kryo和字符串)
将Java对象实例保存在Redis时,将对象序列化成字符串或者序列化成byte数组再存入,以上两种方式孰优孰劣?字符串方式来存取的好处是编码和调试更简单容易,而byte数组的优势又在哪里呢,实战验证吧
499 0
实战Redis序列化性能测试(Kryo和字符串)
|
NoSQL 安全 测试技术
Redis 主从架构搭建、压测
Redis 主从架构搭建、压测
218 0
Redis 主从架构搭建、压测
|
存储 NoSQL 安全
万字长文入门 Redis 命令、事务、锁、订阅、性能测试
万字长文入门 Redis 命令、事务、锁、订阅、性能测试
230 0
万字长文入门 Redis 命令、事务、锁、订阅、性能测试
|
网络协议 NoSQL Unix
redis性能测试tcp socket and unix domain
redis性能测试tcp socket and unix domain
564 0