Redis 是什么

Redis (Remote Dictionary Service) 即远程字典服务 。是一个由C 语言编写的基于内存的存储服务。

Redis 的基础数据结构

reids 目前支持5种基础数据结构 string,list, hash,set,zset
string(字符串)
在c 语言中的结构定义(SDS)见 "sds.h/sdshdr"
注:代码结构和源码不太一样 为方便理解 有兴趣可以看 https://github.com/antirez/re...
如下

stract sdshdr{    int len;// 记录sds 保存的字符串长度    int alloc; // 记录buf 数组中未使用的字节数量    char flags; // 3 lsb of type, 5 unused bits    char buf[]; //字节数组,存储字符}

程序员面试凡事都喜欢问为什么?你先琢磨下,后面开始给大家讲为什么?

list (列表)

在c 语言中的结构定义

typedef struct listNode {    struct listNode *prev; //前置节点    struct listNode *next;// 后置节点    void *value; // 值} listNode;typedef struct list {    listNode *head; //头节点    listNode *tail;// 尾节点    void *(*dup)(void *ptr);//  节点值复制函数    void (*free)(void *ptr);// 节点值释放函数    int (*match)(void *ptr, void *key);//节点值对比函数    unsigned long len;// 链表包含的节点数量} list;