02 2022 档案
摘要:1、纯内存访问。redis的所有数据都在内存中,这是快的主要原因 2、非阻塞IO。redis使用epoll作为IO多路复用的实现。 3、单线程避免了线程切换和资源竞争带来的开销。 单线程问题:耗时较长的命令可能导致阻塞
阅读全文
摘要:一、全局命令(生产环境慎用) 查看所有键:keys * 键是否存在:exits key 删除键:del key 设置键过期时间:expire key seconds 键的数据类型:type key 键总数:dbsiz 二、字符串 设置值:set key value [ex seconds] [px
阅读全文
摘要:一、字符串 业务缓存(json字符串等) 计数器 (利用incr的原子性) 共享session(分布式session,key为sessionId,value为内容) 限速(例如一个手机号一分钟内只能获取一次验证码) 二、哈希 缓存map类型的东西(也可以用字符串存json,在语言层来解码) 三、列表
阅读全文
摘要:redis 所有值对象在内部都定义为 redisObject typedef struct redisObject{ //类型 unsigned type:4; //0.5byte //编码 unsigned encoding:4;//0.5byte //指向底层数据结构的指针 void *ptr;
阅读全文