Redis学习笔记

Reids基本特性
  1. redis默认为16个数据库,可通过修改配置文件databases进行修改。
  2. 连接redis时默认使用0号数据库,可以使用select来进行切换
  3. Redis是单线程的,在内存上使用单线程可以避免上下文切换损耗
五大数据类型
1.String类型

string类型的方法:

  1. APPEND key ‘string1’
    功能: 字符串拼接
    样例输出:stringstring1
    备注:当key-value不存在,则相当于set

  2. STRLEN key
    功能:字符串长度计算
    样例输出:6

  3. INCR key(自增1) / INCRBY key number(自增number)
    功能: 自增
    样例输出:{‘key’:0}运行完成{‘key’:1}

  4. DECR key(自减1) / DECRBY key number(自减number)
    功能: 自减
    样例输出:{‘key’:1}运行完成{‘key’:0}

  5. GERRANG key StartIndex EndIndex
    功能: 截取startindex 到endindex的字符串
    样例输出:GERRANG key 0 2运行输出 str
    备注: index起始为0,0 -1代表全部字符串,0 3代表[0,3]左闭右闭

  6. SETRANGE key StartIndex ReplaceString
    功能: 从startindex开始替换成replacestring
    样例输出:GERRANG key 1 ‘abc’ 运行输出 sabcng

  7. SETEX key Second
    功能: key存在即设置过期时间为second
    样例输出:SETEX key 30秒过期

  8. SETNX key value
    功能: key不存在则创建,存在不操作,SET的话存在会覆盖
    样例输出:SETEX key value 不存在key则设置{‘key’:‘value’}

  9. MSET / MGET 批量创建批量获取
    功能: 批量创建批量删除
    样例输出:MSET key1 value1 key2 value2

  10. MSETNX / MSETEX 批量
    功能: 批量不存在则创建
    样例输出:MSETNX key1 value1 key2 value2
    备注:原子性操作,当某一个存在,则所有都不会生效

  11. GETSET
    功能: 先获取再创建
    样例输出:GETSET key string1 输出string 且{‘key’:‘string1’}

2. List(列表)类型
  1. LPUSH/RPUSH list value1
    功能: 将value从列表左边/右边插入
    样例输出:[value1,value]/[value,value1]

  2. LPOP/RPOP list
    功能: 将列表左边/右边第一个元素移除
    样例输出:[value1,value]

  3. LINDEX list index
    功能: 获取index下标的value
    样例输出:[value1,value] 运行LINDEX list 0输出value1

  4. LLEN list
    功能: 返回list的长度
    样例输出:[value1,value] 运行LLEN list输出2

  5. LREM list number value
    功能: 将number个value从list中移除
    样例输出:[value1,value]运行LREM list 1 value1 得到[value]

  6. LTRIM list startindex endindex
    功能: 从startindex到endindex截取列表并replace原始列表
    样例输出:[value,value1,value2]运行LTRIM list 0 1 得到[value,value1],原始列表被更改

  7. LRANGE list startindex endindex
    功能: 从startindex到endindex获取list元素
    样例输出:[value,value1,value2]运行LRANGE list 0 1 得到[value,value1]

  8. LSET list index value1
    功能: list存在则更新index下标的值为value1,不存在则报错
    样例输出:[value]运行LSET list 0 value1得到[value1]

  9. LINSERT list BEFORE/AFTER value value1
    功能: 在list的value前面/后面插入value1
    样例输出:[value]运行LINSERT list BEFORE value value1得到[value1,value]

  10. RPOPLPUSH list1 list2
    功能: 组合命令从list1右边拿出一个放到list2左边

3. Set(集合)类型

{‘key’}

  1. SADD set value
    功能: 在set中添加value

  2. SMEMBERS set
    功能: 查看set所有value

  3. SISMEMBER set value
    功能: 判断value是否在set中

  4. SCARD set
    功能: 获取set集合中元素个

  5. SREM set value
    功能: 移除set中的value

  6. SRANDMEMBER set
    功能: 随机抽选出一个元素

  7. SPOP set
    功能: 随机弹出移除一个元素

  8. SMOVE set1 set2 value
    功能: 将value从set1移动到set2

  9. SDIFF/SINTER/SUNION set1 set2
    功能: 获取set1,set2差集/交集/并集

4. Hash(哈希)类型

数据样例:{‘key’:{‘key1’:‘value1’,‘key2’:‘value2’}}
大多数string类型的功能hash都可以实现

  1. HSET/HMSET key field value
    功能:创建{‘key’:{‘field’:‘value’}}/批量创建
  2. HGET/HMGET hash field
    功能:获取hash里的field的value值
  3. HDEL hash field
    功能:删除hash里的field字段
  4. HGETALL hash
    功能:获取hash里的所有key:value
  5. HLEN hash
    功能: 获取hash中的数据数量
  6. HKEYS/HVALS hash
    功能: 获取hash中的所有的field值/value值
  7. HINCRBY hash field 1
    功能:hash中的field字段 自增1
5. Zset
常用命令
命令作用
select切换数据库
keys *查看所有的key
get key查看value
flushdb清空当前数据库
flushall清空所有数据库
exists key判断key是否存在
move key 1把1数据库当中的key移除
expire key 10设置key的过期时间为10s
set keyname value创建key-value
type key查看key的类型
ttl key查看key剩余时间
append key “string1”字符串拼接key-stringstring1
GERRANG key startindex endindex从startindex到endindex截取
INCR key/INCRBY key number自增/自增number
DECR key/DECRBY key number自减/自减number
STRLEN key计算value长度
redis-benchmark

redis-benchmark压力测试工具

选项功能
-h指定主机ip
-p端口号
-c指定连接数
-n请求数
–csv以csv格式输出
#10为并发请求1000次本地redis
redis-benchmark -h localhost -p 6379 -c 10 -n 1000
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值