概述
很多人可能只是安装部署redis,并没有深入学习,但其实redis还可以用来做性能测试,Redis 性能测试是通过同时执行多个命令实现的。下面一起来看下吧~
01
语法
redis 性能测试的基本命令如下:
redis-benchmark [option] [option value]
redis 性能测试工具可选参数如下所示:
![d0a8737dc45343fdf0d66beb34b2cb20.png](https://i-blog.csdnimg.cn/blog_migrate/07a2c7efd6d6aca7be001870551adde3.jpeg)
02
实例
1、redis-benchmark -h 127.0.0.1 -p 6379 -c 100 -n 100000
100个并发连接,100000个请求,检测host为localhost 端口为6379的redis服务器性能
![3eaf00eaf38ba1c1284494d003004895.png](https://i-blog.csdnimg.cn/blog_migrate/dc16881f651804a921ddbc03ef331b38.jpeg)
![344ea98c594c4c5a5a25697d7fe785ed.png](https://i-blog.csdnimg.cn/blog_migrate/8a28d3c39e5ef7bac20e629c5102f6c0.jpeg)
![a8939f22aef477c5acc23deee2f96c62.png](https://i-blog.csdnimg.cn/blog_migrate/b53948e3a4ca82d557cbf30ffe3edfbc.jpeg)
2、redis-benchmark -h 127.0.0.1 -p 6379 -q -d 100
测试存取大小为100字节的数据包的性能
![999bdfdd7d71729847cba6d49aac21fe.png](https://i-blog.csdnimg.cn/blog_migrate/f1b0e7e06ad273b3ee8ff33e6b1265a0.jpeg)
3、redis-benchmark -t set,lpush -n 100000 -q
只测试某些操作的性能
![5893414dcb0eec227eb4b65928b132c5.png](https://i-blog.csdnimg.cn/blog_migrate/51687b454f1522603a9a0c9b70be9613.jpeg)
4、redis-benchmark -n 100000 -q script load "redis.call('set','foo','bar')"
只测试某些数值存取的性能
![bdaecbdbbf65ebfcfcb2fa73175859f7.png](https://i-blog.csdnimg.cn/blog_migrate/d34b9c23b4961fb66a59ce09a34fb6ee.jpeg)
上面主要介绍了redis常用的性能测试例子, redis读写性能测试在redis官网测试读写能到10万左右,还是很不错的。另外,Redis 还有个 10k 问题,当缓存数据大于 10k(用作静态页面的缓存,就可能超过这个大小)延迟会明显增加,这也是单线程机制带来的问题。如果你的应用业务量离 Redis 的性能天花板还比较远而且也没有 10k 需求,可以考虑用 Redis 作缓存。
后面会分享更多devops和DBA方面的内容,感兴趣的朋友可以关注一下~
![253b39d7de8ce5ba68572b28839218c1.gif](https://i-blog.csdnimg.cn/blog_migrate/49c588787bbdc168542ed69ccb91870a.gif)