redis源码解析
文章平均质量分 95
redis源码解析
Nuan_Feng
蓝桥杯国赛一等奖,精通netty,rocketmq,xxljob,tx-lcn等中间件。根据RFC实现协议全部特性,http1.1,websocket,tcp,dns,socks5协议。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Redis 7.0 Multi Part AOF 源码解析
Mulit Part AOF源码解析原创 2023-03-01 15:37:59 · 1361 阅读 · 0 评论 -
Redis为什么变慢了?常见延迟问题定位与分析
Redis作为内存数据库,拥有非常高的性能,单个实例的QPS能够达到10W左右。但我们在使用Redis时,经常时不时会出现访问延迟很大的情况,如果你不知道Redis的内部实现原理,在排查问题时就会一头雾水。 很多时候,Redis出现访问延迟变大,都与我们的使用不当或运维不合理导致的。 这篇文章我们就来分析一下Redis在使用过程中,经常会遇到的延迟问题以及如何定位和分析。 使用复杂度高的命令 如果在使用Redis时,发现访问延迟突然增大,如何进行排查? 首先,第一步,建议你去查看一下Redis的慢转载 2021-03-06 20:48:27 · 280 阅读 · 0 评论 -
Redis6.0.8源码解析六之执行set指令时,做了啥?
文章目录服务端建立服务器连接套接字设置监听文件事件,以及对应事件执行函数接受客户端连接接收客户端发来命令服务端建立服务器连接套接字server.initServer这个方法分别创建了ipv4/v6二个套接字,且设置套接字为非阻塞,并存储fds中listenToPortint listenToPort(int port, int *fds, int *count) { int j; /* Force binding of 0.0.0.0 if no bind address i原创 2020-10-11 17:09:25 · 437 阅读 · 0 评论 -
Redis6.0.8源码解析五之(多机数据库)
文章目录部署集群步骤复制旧版复制功能实现新版复制功能实现sentinel集群部署集群步骤复制旧版复制功能实现同步:将从服务器数据更新至主服务器状态命令传播:MASTER修改,同步命令到Slave缺点:当slave中途断了和master的联系,当再次连上master时,master会dump所有命令到RDB文件,然后同步到从服务器.而实际上slave只需要同步断掉期间在master执行的命令.同步客户端向服务器发送SLAVEOF命令,将当前服务器转变为指定服务器的从属服务器(slave原创 2020-09-16 00:30:04 · 479 阅读 · 0 评论 -
Redis6.0.8源码解析四之(单机数据库)
文章目录数据库数据库原创 2020-09-14 12:41:26 · 790 阅读 · 0 评论 -
Redis6.0.8源码解析三之(对象)
在redis中,对象就是封装了数据结构的实现.对象的数据结构typedef struct redisObject { //类型 unsigned type:4; //编码 unsigned encoding:4; //记录对象最后一次访问时间,用于垃圾回收 //可通过OBJECT IDLETIME 查看给定键的空转时长(这个命令不会修改LRU时间),也就是多久没访问. //根据lru属性,若服务器回收内存算法为volatile-lru或者all-l原创 2020-09-14 00:21:34 · 462 阅读 · 0 评论 -
Redis6.0.8源码解析二之(数据结构)
文章目录简单动态字符串链表简单动态字符串redis构建了SDS数据结构,主要对c字符串的一种补充.结构如下:struct __attribute__ ((__packed__)) sdshdr8 { //记录buf数组中已使用字节的数量 //等于SDS保存字符串长度,这里缓存了长度,将获取长度复杂度从O(N)降低到O(1) uint8_t len; /* used */ //记录buf尚未分配字节数量 uint8_t alloc; /* excluding t原创 2020-09-13 00:13:37 · 634 阅读 · 0 评论 -
Redis6.0.8源码解析一之(Clion调试redis)
文章目录参考地址原创 2020-09-11 21:56:03 · 1040 阅读 · 2 评论
分享