Redis-API使用和理解

通用命令

  • keys:查看所有的key 复杂度o(n)
  • dbsize:计算key的总数,复杂度O(1)
  • exists:检查key是否存在,复杂度O(1)
  • del:删除指定key-value, 复杂度O(1)
  • expire key seconds:key 在second秒后过期, 复杂度O(1)
  • ttl key:查看key多久过期 ,复杂度O(1)
  • persist key:去掉key的过期时间, 复杂度O(1)
  • type key:返回key的类型, 复杂度O(1)

数据结构和内部编码

单线程架构

单线程为什么这么快

* 纯内存
* 非阻塞IO
* 避免线程切换和竞态消耗

  

单线程注意什么

 * 一次只运行一条命令
 * 拒绝长(慢)命令
 * 其实不是单线程
 fysnc file descrptor
 close file descriptor

5中数据结构
1.字符串
key value
hello world
counter 1
bits 1010101022

最大512M
场景

  • 缓存
  • 计数器
  • 分布式锁

常见命令
get
set key value #不管key是否存在,都设置
setnx key value #key不存,才设置
set key value xx#key存在,才设置
del
incr o(1)
decr o(1)
incrby o(1)
decrby o(1)

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理