Redis API的使用和理解(一)
redis的API分六种(一):
- 通用命令
- 字符串类型
- 哈希类型
- 列表类型
- 集合类型
- 有序集合类型
一、通用命令
- 通用命令。
- 数据结构和内部编码
- 单线程架构
1)通用命令:
① keys * :是遍历所有的key
keys [pattern] :按照一定的规则遍历key
注意:keys命令的时间复杂度O(n)的命令,一般不在生产环境使用,可以用热备从节点、scan代替。
② dbsize :是计算数据库多少个key
注意:dbsize命令是O(1)的命令,可以在生产环境使用。
③ exists key : 是查看key是否存在。
注意:当key值存在时返回1,不存在时返回0。
④ del key : 删除指定的key-value值。
注意:支持多删除,返回值是删除多少个key-value。
⑤ expire key seconds : 给key设置过期时间。
注意:过期时间是秒数。
⑥ ttl key : 查看key值还有多少秒过期。
⑦ presist key : 去掉key的过期时间。
⑧ type key : 返回key的类型。
注意:返回类型有String、hash、list、set、zset、none(当key不存在时)。
2)数据结构和内部编码:
3)单线程架构:
redis采用的是单线程架构,也就是说每次redis只能执行一条指令。
为什么redis采用单线程执行速度还是那么快?
① redis的数据放在内存中的,读写非常快。
② 非阻塞IO。
③ 避免线程切换和竞争消耗。