
redis
文章平均质量分 79
irak
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
redis(一)对象
对象字符串对象列表对象哈希对象集合对象有序集合对象redis 是一个非关系类型的数据库。里面的数据都是以键值对(key-value)形式来保存的。值的总类一共有5种:字符串对象、列表对象、哈希对象、集合对象、有序集合对象。typeof struct redisObejct { // 对象的类型 unsigned type:4; // 对象的编码 unsigned encoding:4...原创 2019-02-23 23:53:35 · 174 阅读 · 0 评论 -
redis(二)单机数据库
数据库数据库结构数据库键空间设置键的过期时间过期键删除策略AOF和RDB复制功能对过期键的处理RDBAOF复制数据库结构redis服务器会默认设置16个数据库,多机形式的话,会只使用每个redis服务的第一个数据库。数据库键空间redisDb就是16个中的一个,然后他里面的dict指针指向数据的键。设置键的过期时间redis> SET key valueredis> ...原创 2019-02-24 22:36:36 · 222 阅读 · 0 评论 -
redis(三)RDB持久化和AOF持久化
RDB和AOFRDBsave和bgsavesavebgsave自动间隔保存AOFAOF写入与同步AOF文件的载入与数据还原AOF的重写与实现RDBsave和bgsavesavesave会对进程进行阻塞,直到RDB文件创建完毕。阻塞后redis不会接受任何请求。bgsave和save不同的是,bgsave是进程会fork一个子进程,这样主进程不会被阻塞,可以正常的服务。但是bgsave的...原创 2019-02-25 00:40:49 · 234 阅读 · 0 评论 -
reids(四)多机数据库复制
复制同步旧版本(sync)命令传播旧复制功能的缺陷复制(psync)复制的实现这里主要涉及到了主从复制的问题。复制主要涉及到2个功能:同步和命令传播同步旧版本(sync)步骤:从服务器发送sync命令给主服务器主服务器发送rdb文件给从服务器并将缓冲区的所以写命令都发给从服务器命令传播需要主服务器发送命令给从服务器,他们的数据才会保存一致性。旧复制功能的缺陷在...原创 2019-02-25 01:24:04 · 291 阅读 · 0 评论 -
reids(五)sentinel哨兵
哨兵高可用命令连接和订阅连接连接发送信息的频率和作用判断是否下线主观下线客观下线选举领头sentinel(当主服务器客观下线后)故障转移高可用sentinel 哨兵就是 特殊的redis服务器。因为他里面保存着的对象是其他服务器的信息,被设计出来就是为了高可用性。下面会以各种角度来分析高可用性。命令连接和订阅连接通过上面的3张图,我们可以看到sentinel分别会对主服务器、从服务...原创 2019-02-25 02:48:16 · 335 阅读 · 0 评论 -
reids(六)集群
集群节点槽重新分片ASK错误集群中每个主服务器被称节点,然后将16384个槽分配给所有的节点。每个槽里面有多个key值。为什么是16384个槽不是其他的个数?(https://www.phpyuan.com/282515.html)心跳包文包含这个节点所有的配置,16k的槽需要2k的空间,65k大概需要8k的空间集群中主节点基本不会超过1000个,每个节点分到的槽位不会太少配置信息根据...原创 2019-02-25 14:49:10 · 285 阅读 · 0 评论