最近学习了Redis,对其内部结构较为感兴趣,为了进一步了解其运行原理,我打算本身动手用C++写一个redis。这是我第一次造轮子,因此记念一下 ^ _ ^。git
源码github连接,项目如今实现了客户端与服务器的连接与交互,以及一些Redis的基本命令,下面是测试结果:github
(左边是服务端,右边是客户端)redis
为了完善其功能而且锻炼一下本身的数据结构与算法,我下一阶段打算根据《Redis设计与实现》一书优化数据结构与算法从而完善本身的项目。算法
首先是对服务端的初始化,包括数据库的初始化以及命令集合的初始化。
数据库
在客户端链接以后,开始建立客户端对其进行初始化,而且将其与服务端对应的数据库进行链接。
服务器
在客户端发送命令以后,服务端接受命令,对命令的合法性进行判断,而后在命令集合中查找相关命令并执行,最后返回执行结果给客户端。数据结构