- 博客(5)
- 收藏
- 关注
原创 redis中String 类型的底层结构
存储内容布局方式内存结构特点核心目标Long 类型整数指针存数据无独立数据区,指针直接存整数省内存(少用 8 字节独立空间)≤44 字节短字符串embstr 编码+ SDS 连续内存减少碎片,提升效率>44 字节长字符串raw 编码与 SDS 独立内存灵活分配,降低管理成本数据小(Long 整数、短字符串):尽量 “打包” 在一起,省空间、少碎片;数据大(长字符串):果断 “分开装”,保灵活、降成本。
2025-10-23 10:39:35
828
原创 redis单线程
以 Get 请求为例,SimpleKV 为了处理一个 Get 请求,需要监听客户端请求(bind/listen),和客户端建立连接(accept),从 socket 中读取请求(recv),解析客户端发送请求(parse),根据请求类型读取键值数据(get),最后给客户端返回结果,即向 socket 中写回数据(send)。在这里的网络 IO 操作中,有潜在的阻塞点,分别是 accept() 和 recv()。
2025-10-22 10:28:18
542
原创 快速的Redis有哪些慢操作
redis的数据结构一共有6种。分别是简和。它们和数据类型的对应关系如下图所示String 类型的底层实现只有一种数据结构,也就是。而 List、Hash、Set 和 Sorted Set 这四种数据类型,都有两种底层实现结构。通常情况下,我们会把这四种类型称为,它们的特点是一个键对应了一个集合的数据。
2025-10-21 19:05:44
866
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅