- 博客(3)
- 收藏
- 关注
原创 Redis7.0.15源码分析–数据结构分析
Redis7.0.15数据结构分析摘要 Redis的核心数据结构基于redisObject对象,包含5种数据类型(String、List、Hash、Set、ZSet)和12种编码方式。关键设计包括: redisObject结构: 通过type字段标识数据类型 encoding字段决定内部编码(如HT哈希表、SKIPLIST跳表等) 包含LRU/LFU内存淘汰策略 SDS字符串优化: 采用多态Header设计(sdshdr8/16/32/64) 通过连续内存分配和指针运算实现高效访问 使用flags低3位标识
2025-09-23 19:40:15
1244
原创 time_wait状态解析
要说明使用time_wait状态的原因就要假设没有time_wait状态会有什么影响由上图可以看到,被关闭端在收到最后的ACK包之前不会关闭连接,而是处于等待最后一个ACK包的状态。会在超时后重传FIN包,并且继续等待最后一个ACK包。如果没有time_wait状态,那重传的FIN包将永远不会被接收,也就没有最后的ACK包传回,那被关闭连接的一端将一直处于LAST_ACK状态。我们TCP是纯爱战士,不像UDP一样是给海王,所以得对另一端负责,要等待另一端重传的FIN包。
2025-02-09 21:16:04
1296
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
1