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 )
-s <socket> Server socket (overrides host and port)
-c <clients> Number of parallel connections (default )
-n <requests> Total number of requests (default )
-d <size> Data size of SET/GET value in bytes (default )
-k <boolean> =keep alive =reconnect (default )
-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: instead of constant
keys, the <keyspacelen> argument determines the max
number of values for the random number. For instance
if set to only rand: - rand:
range will be allowed.
-P <numreq> Pipeline <numreq> requests. Default (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')"

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

测试结果分析:

   requests completed in 0.30 seconds
parallel clients
bytes payload
keep alive: 0.11% <= milliseconds
86.00% <= milliseconds
90.12% <= milliseconds
96.68% <= milliseconds
99.27% <= milliseconds
99.54% <= milliseconds
99.69% <= milliseconds
99.78% <= milliseconds
99.89% <= milliseconds
100.00% <= milliseconds
33222.59 requests per second ====== PING_BULK ======
requests completed in 0.27 seconds
parallel clients
bytes payload
keep alive: 0.93% <= milliseconds
97.66% <= milliseconds
100.00% <= milliseconds
37174.72 requests per second ====== SET ======
requests completed in 0.32 seconds
parallel clients
bytes payload
keep alive: 0.22% <= milliseconds
91.68% <= milliseconds
97.78% <= milliseconds
98.80% <= milliseconds
99.38% <= milliseconds
99.61% <= milliseconds
99.72% <= milliseconds
99.83% <= milliseconds
99.94% <= milliseconds
100.00% <= milliseconds
30959.75 requests per second ====== GET ======
requests completed in 0.28 seconds
parallel clients
bytes payload
keep alive: 0.55% <= milliseconds
98.86% <= milliseconds
100.00% <= milliseconds
35971.22 requests per second ====== INCR ======
requests completed in 0.14 seconds
parallel clients
bytes payload
keep alive: 95.61% <= milliseconds
100.00% <= milliseconds
69444.45 requests per second ====== LPUSH ======
requests completed in 0.21 seconds
parallel clients
bytes payload
keep alive: 18.33% <= milliseconds
100.00% <= milliseconds
48309.18 requests per second ====== LPOP ======
requests completed in 0.23 seconds
parallel clients
bytes payload
keep alive: 0.29% <= milliseconds
99.76% <= milliseconds
100.00% <= milliseconds
44052.86 requests per second ====== SADD ======
requests completed in 0.22 seconds
parallel clients
bytes payload
keep alive: 2.37% <= milliseconds
99.81% <= milliseconds
100.00% <= milliseconds
44444.45 requests per second ====== SPOP ======
requests completed in 0.22 seconds
parallel clients
bytes payload
keep alive: 4.27% <= milliseconds
99.84% <= milliseconds
100.00% <= milliseconds
44642.86 requests per second ====== LPUSH (needed to benchmark LRANGE) ======
requests completed in 0.22 seconds
parallel clients
bytes payload
keep alive: 12.35% <= milliseconds
99.62% <= milliseconds
100.00% <= milliseconds
46082.95 requests per second ====== LRANGE_100 (first elements) ======
requests completed in 0.48 seconds
parallel clients
bytes payload
keep alive: 0.01% <= milliseconds
3.27% <= milliseconds
98.71% <= milliseconds
99.93% <= milliseconds
100.00% <= milliseconds
20964.36 requests per second ====== LRANGE_300 (first elements) ======
requests completed in 1.26 seconds
parallel clients
bytes payload
keep alive: 0.01% <= milliseconds
0.14% <= milliseconds
0.90% <= milliseconds
7.03% <= milliseconds
31.68% <= milliseconds
78.93% <= milliseconds
98.88% <= milliseconds
99.56% <= milliseconds
99.72% <= milliseconds
99.95% <= milliseconds
100.00% <= milliseconds
7961.78 requests per second ====== LRANGE_500 (first elements) ======
requests completed in 1.82 seconds
parallel clients
bytes payload
keep alive: 0.01% <= milliseconds
0.06% <= milliseconds
0.14% <= milliseconds
0.30% <= milliseconds
0.99% <= milliseconds
2.91% <= milliseconds
8.11% <= milliseconds
43.15% <= milliseconds
88.38% <= milliseconds
97.25% <= milliseconds
98.61% <= milliseconds
99.26% <= milliseconds
99.30% <= milliseconds
99.44% <= milliseconds
99.48% <= milliseconds
99.64% <= milliseconds
99.85% <= milliseconds
99.92% <= milliseconds
99.95% <= milliseconds
99.96% <= milliseconds
99.97% <= milliseconds
100.00% <= milliseconds
5491.49 requests per second ====== LRANGE_600 (first elements) ======
requests completed in 2.29 seconds
parallel clients
bytes payload
keep alive: 0.01% <= milliseconds
0.05% <= milliseconds
0.10% <= milliseconds
0.19% <= milliseconds
0.34% <= milliseconds
0.46% <= milliseconds
0.58% <= milliseconds
4.46% <= milliseconds
21.80% <= milliseconds
40.48% <= milliseconds
60.14% <= milliseconds
79.81% <= milliseconds
93.77% <= milliseconds
97.14% <= milliseconds
98.67% <= milliseconds
99.08% <= milliseconds
99.30% <= milliseconds
99.41% <= milliseconds
99.52% <= milliseconds
99.61% <= milliseconds
99.79% <= milliseconds
99.88% <= milliseconds
99.89% <= milliseconds
99.95% <= milliseconds
99.96% <= milliseconds
99.97% <= milliseconds
99.98% <= milliseconds
100.00% <= milliseconds
4359.20 requests per second ====== MSET ( keys) ======
requests completed in 0.37 seconds
parallel clients
bytes payload
keep alive: 0.01% <= milliseconds
2.00% <= milliseconds
18.41% <= milliseconds
88.55% <= milliseconds
96.09% <= milliseconds
99.50% <= milliseconds
99.65% <= milliseconds
99.75% <= milliseconds
99.77% <= milliseconds
99.78% <= milliseconds
99.79% <= milliseconds
99.80% <= milliseconds
99.81% <= milliseconds
99.82% <= milliseconds
99.83% <= milliseconds
99.84% <= milliseconds
99.85% <= milliseconds
99.86% <= milliseconds
99.87% <= milliseconds
99.88% <= milliseconds
99.89% <= milliseconds
99.90% <= milliseconds
99.91% <= milliseconds
99.92% <= milliseconds
99.93% <= milliseconds
99.95% <= milliseconds
99.96% <= milliseconds
99.97% <= milliseconds
99.98% <= milliseconds
99.99% <= milliseconds
100.00% <= milliseconds
27173.91 requests per second

Redis-benchmark测试Redis性能的更多相关文章

  1. YCSB benchmark测试mongodb性能——和web服务器测试性能结果类似

    转自:http://blog.sina.com.cn/s/blog_48c95a190102v9kg.html         YCSB(Yahoo! Cloud Serving Benchmark) ...

  2. YCSB benchmark测试cassandra性能——和web服务器测试性能结果类似

    转自:http://www.itdadao.com/articles/c15a531189p0.html http://www.cnblogs.com/bettersky/p/6158172.html ...

  3. 【Redis】Redis-benchmark测试Redis性能

    Redis-benchmark是官方自带的Redis性能测试工具,可以有效的测试Redis服务的性能. 使用说明如下: Usage: redis-benchmark [-h <host>] ...

  4. Redis(十九):Redis压力测试工具benchmark

    redis-benchmark使用参数介绍 Redis 自带了一个叫 redis-benchmark 的工具来模拟 N 个客户端同时发出 M 个请求. (类似于 Apache ab 程序).你可以使用 ...

  5. 【Azure Redis 缓存 Azure Cache For Redis】使用Redis自带redis-benchmark.exe命令测试Azure Redis的性能

    问题描述 关于Azure Redis的性能问题,在官方文档中,可以查看到不同层级Redis的最大连接数,每秒处理请求的性能. 基本缓存和标准缓存 C0 (250 MB) 缓存 - 最多支持 256 个 ...

  6. Azure Redis Cache (3) 在Windows 环境下使用Redis Benchmark

    <Windows Azure Platform 系列文章目录> 熟悉Redis环境的读者都知道,我们可以在Linux环境里,使用Redis Benchmark,测试Redis的性能. ht ...

  7. 搭建和测试 Redis 主备和集群

    本文章只是自我学习用,不适宜转载. 1. Redis主备集群 1.1 搭建步骤 机器:海航云虚机(2核4GB内存),使用 Centos 7.2 64bit 操作系统,IP 分别是 192.168.10 ...

  8. Redis QPS测试

    1.计算qps: 1)redis发布版本中自带了redis-benchmark性能测试工具,可以使用它计算qps.示例:使用50个并发连接,发出100000个请求,每个请求的数据为2kb,测试host ...

  9. 『性能』ServiceStack.Redis 和 StackExchange.Redis 性能比较

    背景 近来,需要用到 Redis 这类缓存技术 —— MongoDB 和 Redis 没有进行过比较. 我也懒得在这些细节上 纠结那么多 —— 按照网友给出的文章,听从网友建议,选择 Redis. R ...

随机推荐

  1. 使用PhpStrom等IDE编辑 远程linux服务器上的文件 实时更新

    习惯了在linux上 vim进行PHP的开发,突然忘了IDE的感觉,所以想到了.通过PhpStrom等IDE直接编辑 samba共享到 mac或者windows本地的磁盘进行编辑. 为了忘却的纪念,有 ...

  2. VirtualBox-Linux系统安装增强功能

    我们在安装之前,必须得先安装好它所需要的依赖包,不然安装过程必定会出现错误! 一.安装依赖包 #yum install kernel-headers #yum install kernel-devel ...

  3. selenium启动firefox时加载扩展

    有些时候,我们测试需要用到插件或者已经导入的证书(比如金融和安全加密行业),而selenium启动firefox时会打开一个新的,不含有任何插件和个人证书的firefox(等同于全新安装后第一次打开的 ...

  4. java 字符串zlib压缩/解压

    今天在测公司的中间件时发现,增加netty自带的zlib codec压缩处理后,就报decompress failed, invalid head之类的异常.后来发现,直接用bytebuf处理报文体是 ...

  5. 成为 Web 开发大师你必须知道的 7 件事情

    曾经是这样的,懂点编码,并可以偶尔耍点酷,那么你就会被认为是一个Web开发大师.但是现在,情况再也不是这样的了.Web开发已经朝着主流方向发展,开发人员数量显著增加.这意味着,如果你想成为这个领域的大 ...

  6. C#如何实现一个简单的流程图设计器

    以前看过不少Window Form开发的流程图设计器,支持节点拖放,非常方便即可设计出很美观的流程图,作为一个程序员,对其内部实现原理一直很好奇,感叹有朝一日自己如果可以开发一款类似的软件那是多么让人 ...

  7. Android压力测试工具——Monkey

    Android压力测试工具——Monkey Monkey是运行在模拟器上和真机设备上的一段程序,它会产生用户事件的一系列伪随机流,比如点击.触摸.手势,还有很多系统级别的事件.Monkey通常是用来做 ...

  8. 使用Masonry搭建特殊布局时与xib的对比

    之前只有比较浅的接触过Masonry.项目中大多数的布局还是用xib中的AutoLayout与手码的frame计算相结合,相信也会有很多项目和我一样是这两种布局的组合.其实xib各方面用的感觉都挺好, ...

  9. spring理解

    Struts与Hibernate可以做什么事? Struts,Mvc中控制层解决方案,可以进行请求数据自动封装.类型转换.文件上传.效验… Hibernate,持久层的解决方案:可以做到,把对象保存到 ...

  10. Android ThreadUtil 线程公共类,判断是否在主线程/ 子线程执行 相关操作

    前言:通常,我们写的公共的模块给别人用,但是这个模块又必须在特定的线程中执行. 比如,一个加载网络图片的的方法,需要在子线程中执行. /** * 加载网络图片 */ private void load ...