news 2026/7/4 18:08:52

Redis-benchmark测试Redis性能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/4 18:07:05

OpenCV实现药片计数与手势识别系统

1. 基于OpenCV的药片计数系统实现在药品生产、医疗管理和实验室研究中&#xff0c;准确快速地统计药片数量是一项常见需求。传统人工计数方式效率低下且容易出错&#xff0c;而基于计算机视觉的自动化解决方案能够显著提升效率和准确性。下面我将详细介绍如何使用OpenCV实现一个…

作者头像 李华
网站建设 2026/7/4 18:06:37

5分钟快速上手Icarus Verilog:数字电路仿真的完整指南

5分钟快速上手Icarus Verilog&#xff1a;数字电路仿真的完整指南 【免费下载链接】iverilog Icarus Verilog 项目地址: https://gitcode.com/gh_mirrors/iv/iverilog Icarus Verilog是一款功能强大的开源Verilog仿真工具&#xff0c;为数字电路设计和验证提供了完整的开…

作者头像 李华
网站建设 2026/7/4 18:02:49

AI工具选择不是跟风,而是个人生产力工程决策

1. 为什么“AI工具焦虑”正在悄悄吃掉你的专业能力 你有没有过这种体验&#xff1a;早上打开浏览器&#xff0c;想查一个技术文档&#xff0c;结果被首页推送的“全新AI代码助手上线”吸引&#xff0c;点进去看了三分钟介绍视频&#xff0c;顺手注册了账号&#xff1b;接着被弹…

作者头像 李华
网站建设 2026/7/4 18:02:36

PCF8591与PIC24FJ256GA110的ADC/DAC信号处理实战

1. 项目背景与核心需求在嵌入式系统开发中&#xff0c;模拟信号与数字信号的相互转换是最基础也是最关键的技术环节之一。PCF8591作为一款经典的ADC/DAC转换芯片&#xff0c;配合PIC24FJ256GA110这款高性能16位微控制器&#xff0c;能够构建一个灵活可靠的信号处理系统。这个组…

作者头像 李华