Redis
文章平均质量分 89
构建一个简单的Redis
Bug-Free生活
Coding!!!
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
用C/C++构建自己的Redis——第七章、堆数据结构&TTL
本章我们学习了如何使用C/C++构建自己的Redis服务器,特别是如何实现和管理带TTL(生存时间)的堆数据结构。文章首先回顾了堆数据结构的基本概念,然后详细描述了堆的定义、操作以及如何将堆集成到服务器中以维护TTL计时器。此外,还讨论了如何添加和删除TTL计时器,以及如何找到最近的计时器和触发计时器。最后,介绍了如何添加新的命令来更新和查询TTL。原创 2024-10-20 17:22:15 · 2208 阅读 · 0 评论 -
用C/C++构建自己的Redis——第六章、事件循环和计时器
这一章我们学习了如何在服务器中实现超时机制,以便处理空闲的TCP连接。我们首先了解超时在网络编程中的重要性,然后讨论修改事件循环的必要性,并提出了使用链表作为计时器的数据结构。接着,文章提供了链表操作的具体代码,并展示了如何将这些操作集成到事件循环中。此外,还介绍了如何处理和触发计时器,并提供了测试空闲超时机制的方法。原创 2024-10-12 20:53:33 · 1111 阅读 · 0 评论 -
用C/C++构建自己的Redis——第五章、Redis中的AVL树实现
在Redis数据库中,有序集合是一种核心的数据结构,它允许存储具有关联分数的唯一元素。为了实现这种数据结构,Redis采用了AVL树,一种自平衡的二叉搜索树,以确保数据的快速插入、删除和查找操作。这一章我们将一起深入探讨AVL树在Redis有序集合中的应用,包括其节点定义、插入和删除操作、以及如何通过旋转操作保持树的平衡。此外,文章还将介绍如何通过一系列测试案例来验证AVL树的正确性和性能,确保其在实际应用中的可靠性。原创 2024-09-27 16:52:50 · 1353 阅读 · 0 评论 -
用C/C++构建自己的Redis——第四章、基础服务器:get、set和del
这里我们首先对前面几章做一个总结,第一章“TCP Server和Client”,我们学习了客户端和服务端如何通信;第二章“协议解析”,学习了协议解析、IO辅助函数、通信过程中这些请求是如何处理的;第三章“回声服务器(实现事件循环)”,学习了如何循环的去处理请求,如缓存等等。这一章将进一步完善服务器,这将在前三章的基础上添加更深的内容,如对客户端发送请求中的命令处理,如get、set和del原创 2024-09-21 21:15:58 · 712 阅读 · 0 评论 -
用C/C++构建自己的Redis——第三章、回声服务器(实现事件循环)
前一章“协议解析”我们一起学习了如何构建一个简单的Redis服务器,包括协议解析、IO辅助函数、请求处理。这一章我们一起学习如何构建一个回声服务器,如何建立新连接、进行状态机读写以及协议解析。原创 2024-09-20 00:24:15 · 2749 阅读 · 0 评论 -
用C/C++构建自己的Redis——第二章、协议解析
数据结构,很多初学者对它的实际用处了解较少,《Build Your Own Redis with C/C++》讲述了如何从0使用C/C++,运用基本的数据结构,构建属于自己的Redis。前面一章“TCP Server和Client”我们一起学习了,如何通过Socket实现TCP的通信——Client发送请求到Server以及Server返回响应到Client。这一章我们学习如何构建一个简单的Redis服务器,包括协议解析、IO辅助函数、请求处理、客户端代码和测试。原创 2024-09-18 19:41:48 · 1482 阅读 · 0 评论 -
用C/C++构建自己的Redis——第一章、TCP Server和Client
数据结构,很多初学者对它的实际用处了解较少,最近看了一本书《Build Your Own Redis with C/C++》,它讲述了如何从0使用C/C++,运用基本的数据结构,构建属于自己的Redis。今天,我们一起学习**TCP Server和Client**这一部分。原创 2024-09-14 18:15:28 · 2704 阅读 · 1 评论
分享