持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第4天,点击查看活动详情
1、压力测试
1、redis压力测试工具-----Redis-benchmark
Redis-benchmark是官方自带的Redis性能测试工具,可以有效的测试Redis服务的性能。
2、redis-benchmark工具存放在Redis的src目录下
使用 redis-benchmark -h 命令来查看使用参数
redis-benchmark [-h <host>] [-p <port>] [-c <clients>] [-n <requests]> [-k <boolean>]
-h <hostname> 指定服务器主机名 (默认 127.0.0.1)
-p <port> 指定服务器端口 (默认 6379)
-s <socket> 指定服务器 socket
-a <password> Redis 认证密码
-c <clients> 指定并发连接数 (默认 50)
-n <requests> 指定请求数 (默认 100000)
-d <size> 以字节的形式指定 SET/GET 值的数据大小 (默认 2)
--dbnum <db> 选择指定的数据库号 (默认 0)
-k <boolean> 1=keep alive 0=reconnect (默认 1)
-r <keyspacelen> SET/GET/INCR 使用随机 key, SADD 使用随机值
-P <numreq> 通过管道传输 <numreq> 请求 (no pipeline)
-q 退出,仅显示 query/sec 值
--csv 以 CSV 格式输出
-l 生成循环,永久执行测试
-t <tests> 仅运行以逗号分隔的测试命令列表
-I Idle 模式,仅打开 N 个 idle 连接并等待
3、压力测试
对127.0.0.1使用20个并行客户端,总共10万个请求
./redis-benchmark -h 127.0.0.1 -p 6379 -n 100000 -c 20 -q
2、基础面试知识
默认16个数据库,类似数组下标从零开始,初始默认使用零号库。
查看 redis.conf ,里面有默认的配置
# Set the number of databases. The default database is DB 0, you can select
# a different one on a per-connection basis using SELECT <dbid> where
# dbid is a number between 0 and 'databases'-1
databases 16
1、Select命令切换数据库
127.0.0.1:6379> select 7
OK
127.0.0.1:6379[7]>
# 不同的库可以存不同的数据
2、Dbsize查看当前数据库的key的数量
127.0.0.1:6379> select 1
OK
127.0.0.1:6379[1]> DBSIZE
(integer) 0
127.0.0.1:6379[1]> select 0
OK
127.0.0.1:6379> DBSIZE
(integer) 5
127.0.0.1:6379> keys * # 查看具体的key
1) "counter:__rand_int__"
2) "mylist"
3) "k1"
4) "myset:__rand_int__"
5) "key:__rand_int__"
3、Flushdb:清空当前库
4、Flushall:清空全部的库
127.0.0.1:6379> FLUSHDB
OK
127.0.0.1:6379> DBSIZE
(integer) 0