最近学习了Redis,对其内部结构较为感兴趣,为了进一步了解其运行原理,我打算自己动手用C++写一个redis。这是我第一次造轮子,所以纪念一下 ^ _ ^。

源码github链接,项目现在实现了客户端与服务器的链接与交互,以及一些Redis的基本命令,下面是测试结果:

(左边是服务端,右边是客户端)
在这里插入图片描述

为了完善其功能并且锻炼一下自己的数据结构与算法,我下一阶段打算根据《Redis设计与实现》一书优化数据结构与算法从而完善自己的项目。

基本结构介绍

在这里插入图片描述

基本流程介绍

首先是对服务端的初始化,包括数据库的初始化以及命令集合的初始化。
在这里插入图片描述

在客户端连接之后,开始创建客户端对其进行初始化,并且将其与服务端对应的数据库进行连接。
在这里插入图片描述

在客户端发送命令之后,服务端接受命令,对命令的合法性进行判断,然后在命令集合中查找相关命令并执行,最后返回执行结果给客户端。

在这里插入图片描述


Shimmer
105 声望30 粉丝

A Pig.