当前位置: 首页 > news >正文

Redis-benchmark测试Redis性能

Redis-benchmark是官方自带的Redis性能测试工具,可以有效的测试Redis服务的性能。

使用说明如下:

Usage: redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests]> [-k <boolean>] -h <hostname> Server hostname (default 127.0.0.1) -p <port> Server port (default 6379) -s <socket> Server socket (overrides host and port) -c <clients> Number of parallel connections (default 50) -n <requests> Total number of requests (default 10000) -d <size> Data size of SET/GET value in bytes (default 2) -k <boolean> 1=keep alive 0=reconnect (default 1) -r <keyspacelen> Use random keys for SET/GET/INCR, random values for SADD Using this option the benchmark will get/set keys in the form mykey_rand:000000012456 instead of constant keys, the <keyspacelen> argument determines the max number of values for the random number. For instance if set to 10 only rand:000000000000 - rand:000000000009 range will be allowed. -P <numreq> Pipeline <numreq> requests. Default 1 (no pipeline). -q Quiet. Just show query/sec values --csv Output in CSV format -l Loop. Run the tests forever -t <tests> Only run the comma-separated list of tests. The test names are the same as the ones produced as output. -I Idle mode. Just open N idle connections and wait.


测试命令事例:

1、redis-benchmark -h 192.168.1.201 -p 6379 -c 100 -n 100000
100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能

2、redis-benchmark -h 192.168.1.201 -p 6379 -q -d 100

测试结果:

测试存取大小为100字节的数据包的性能

3、redis-benchmark -t set,lpush -n 100000 -q

只测试某些操作的性能

4、redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"

只测试某些数值存取的性能

测试结果分析:

[root@localhost local]# ps -ef|grep redis root 1890 1 0 18:38 ? 00:02:10 /usr/local/bin/redis-server 0.0.0.0:6379 root 3498 3294 0 22:30 pts/1 00:00:00 grep redis [root@localhost local]# redis-benchmark -h 192.168.0.106 -p 6379 -c 100 -n 100000 ====== PING_INLINE ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.03% <= 1 milliseconds 99.60% <= 2 milliseconds 99.68% <= 3 milliseconds 99.77% <= 4 milliseconds 99.79% <= 6 milliseconds 99.81% <= 7 milliseconds 99.90% <= 8 milliseconds 99.90% <= 10 milliseconds 100.00% <= 10 milliseconds 121654.50 requests per second ====== PING_BULK ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.89% <= 1 milliseconds 100.00% <= 1 milliseconds 122249.38 requests per second ====== SET ====== 100000 requests completed in 0.87 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.38% <= 1 milliseconds 99.59% <= 3 milliseconds 99.65% <= 4 milliseconds 99.68% <= 6 milliseconds 99.69% <= 7 milliseconds 99.72% <= 14 milliseconds 99.75% <= 15 milliseconds 99.82% <= 18 milliseconds 99.90% <= 19 milliseconds 99.94% <= 20 milliseconds 100.00% <= 20 milliseconds 114810.56 requests per second ====== GET ====== 100000 requests completed in 0.83 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.89% <= 1 milliseconds 100.00% <= 1 milliseconds 120918.98 requests per second ====== INCR ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.96% <= 1 milliseconds 100.00% <= 1 milliseconds 121506.68 requests per second ====== LPUSH ====== 100000 requests completed in 0.83 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.47% <= 1 milliseconds 99.68% <= 2 milliseconds 99.88% <= 3 milliseconds 99.97% <= 4 milliseconds 100.00% <= 5 milliseconds 100.00% <= 5 milliseconds 120481.93 requests per second ====== RPUSH ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.87% <= 1 milliseconds 100.00% <= 1 milliseconds 122100.12 requests per second ====== LPOP ====== 100000 requests completed in 0.83 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.93% <= 1 milliseconds 100.00% <= 1 milliseconds 121065.38 requests per second ====== RPOP ====== 100000 requests completed in 0.83 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.87% <= 1 milliseconds 100.00% <= 1 milliseconds 120481.93 requests per second ====== SADD ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.93% <= 1 milliseconds 100.00% <= 1 milliseconds 123001.23 requests per second ====== HSET ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.85% <= 1 milliseconds 99.96% <= 5 milliseconds 100.00% <= 5 milliseconds 121951.22 requests per second ====== SPOP ====== 100000 requests completed in 0.82 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.89% <= 1 milliseconds 100.00% <= 1 milliseconds 121506.68 requests per second ====== LPUSH (needed to benchmark LRANGE) ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.68% <= 1 milliseconds 99.93% <= 3 milliseconds 100.00% <= 3 milliseconds 122850.12 requests per second ====== LRANGE_100 (first 100 elements) ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.78% <= 1 milliseconds 100.00% <= 1 milliseconds 123152.71 requests per second ====== LRANGE_300 (first 300 elements) ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.86% <= 1 milliseconds 100.00% <= 1 milliseconds 123456.79 requests per second ====== LRANGE_500 (first 450 elements) ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.87% <= 1 milliseconds 99.98% <= 2 milliseconds 100.00% <= 3 milliseconds 100.00% <= 3 milliseconds 123152.71 requests per second ====== LRANGE_600 (first 600 elements) ====== 100000 requests completed in 0.81 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.90% <= 1 milliseconds 100.00% <= 1 milliseconds 122850.12 requests per second ====== MSET (10 keys) ====== 100000 requests completed in 0.73 seconds 100 parallel clients 3 bytes payload keep alive: 1 99.28% <= 1 milliseconds 99.87% <= 2 milliseconds 99.88% <= 9 milliseconds 99.89% <= 10 milliseconds 99.98% <= 20 milliseconds 100.00% <= 20 milliseconds 136239.78 requests per second

http://www.cnnetsun.cn/news/3143194.html

相关文章:

  • GLM-5与DeepSeek-V2真实业务场景实测:长文本理解、法律解析与Excel智能操作对比
  • Chrome for Testing:如何用5大核心功能彻底解决自动化测试的版本一致性难题
  • OpenCV实现药片计数与手势识别系统
  • 5分钟快速上手Icarus Verilog:数字电路仿真的完整指南
  • AI工具选择不是跟风,而是个人生产力工程决策
  • PCF8591与PIC24FJ256GA110的ADC/DAC信号处理实战
  • Web安全入门实战:从零挖掘SRC漏洞的标准化流程与高频漏洞解析
  • 基于Playwright与MCP构建企业级UI自动化测试平台架构指南
  • Windows内核驱动漏洞利用实战:从堆溢出到任意读写与权限提升
  • 基于YOLOv10的课堂行为智能分析系统开发实践
  • PHP反序列化漏洞:从CTF入门到实战攻防与防御指南
  • PIC18F56K42与M95M04的嵌入式配置存储方案
  • 基于YOLOv8与PyQt5的智能车流监控系统开发实战
  • 从零构建智能体框架:HelloAgents开发指南
  • AI Agent安全架构对比:从OpenClaw静态工具箱到HermesAgent动态学徒的防御演进
  • 逻辑回归实战:从概率校准到业务可解释的全流程工程指南
  • Dify开源AI应用开发平台:从零部署到工作流实战指南
  • 魔兽争霸III终极优化指南:5步解锁流畅游戏体验
  • LeetDown:让旧iPhone重获新生的终极macOS降级工具
  • 5个真实落地的AI工作流:零代码实现日常办公提效
  • PHP反序列化漏洞:原理、利用与纵深防御实战指南
  • 基于ManTra-Net的Web图像篡改检测系统设计与实现
  • AI研发效率革命:从RLHF实践看大模型时代基础设施的工程哲学
  • Win11Debloat终极指南:如何用5分钟让你的Windows系统性能提升50%
  • AI模型漂移监测与自动重训练实战指南
  • SecureBoot状态检测与修复:解决《战地2042》等游戏启动失败问题
  • 基于YOLOv10的皮肤病识别系统开发与实践
  • LENA-R8与STM32F723ZE物联网硬件开发实战指南
  • 深入解析DoS攻击:从原理到实战防御与应急响应
  • LENA-R8与TM4C123GH6PZ物联网硬件协同设计指南