Redis的基础使用
Redis的基础 5种数据类型
数据类型 | 描述 |
---|---|
string | 字符串 |
set | 集合 |
list | 列表 |
hash | 字典 |
sorted set | 有序集合 |
实例1:value为string类型(int特殊)
- 放:set str1 abc
取:get str1 - 查看当前redis种所有的key:keys *
- incr key1
- 如果没有这个key:key1则创建key1且其value为1
- 如果这个key存在了,则key的value则+1
- decr key1
- key1的value-1
- 删除一个key :del key1
实例2:value数据类型为hash
- hash放:hset hash1 field1 1
- hash取:hget hash1 field1
- 查看当前redis种所有的key同上:keys *
- 查看hash1中有多少个keys:hkeys hash1
- 查看hash1中的所有key的value:hvals hash1
- 查看hash1中的所有key和value:hgetall hash1
- 删除hash1中的某个key:hdel hash1 field3
实例3 :value数据类型为 list 队列
- 放
- 从左边开始添加:lpush list1 1 2 3 4 5 6
- 从右边开始添加:rpush list1 a b c d e
- 查看list中元素从第0个开始到所有用-1表示: lrange list1 0 -1
- 取
- 从左边取了一个元素,取完这个list1中就没有这个元素了:lpop list1
- 从右边取了一个元素,取完这个list1中就没有这个元素了:rpop list
实例4 :set (特点:无序且不能重复)
- 放(会过滤掉重复的): sadd set1 a b a b c d
- 删除a:srem set1 a
- 查看set1集合中:smembers set1
实例5:sorted set
其他命令:
- 永久保存key:Persist key1
- 重置key1的过期时间: expire key 时间(s)
- 查看key1的有效期:Ttl key1
- 清楚key的过期实践,key持久化:Persist key
redis 缓存为什么快?
- 不用遍历,还是算法带来的好处
- 是存在内存里的
redis放再内存里,当内存用满了呢?还能存吗
- 能,还可以存在虚拟内存中,但会影响性能
- 所以当内存不够用了的时候,解决办法是:搭建集群
上图不解释: