Redis数据库底层实现原理
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> (一)基本数据结构 1)redisServer Redis服务器使用redisServer结构保存服务器的状态,其中,dbnum表示服务器的数据库数量,一个redisDb类型的数组保存所有的数据库。 struct redisServer { //服务器的数据库数量 int dbnum; //一个数组,保存服务器中的所有数据库 redisDb *db; } 2)redisClient Redis客户端使用redisClient结构来记录客户端当前的状态,其中,一个redisDb类型的指针指向了客户端当前使用的数据库。 struct redisClient { //记录客户端当前正在使用的数据库 redisDb *db; } redisClient.db指针指向redisServer.db数组中的一个元素,被指向的元素就是客户端的目标数据库。通过修改redisClient.db指针,让它指向服务器中的不同数据库,从而实现切换目标数据库的功能。 3)redisDb 来源: oschina 链接: https://my.oschina.net/u/3498791/blog/3141889