首页 > 数据库 >redis学习笔记

redis学习笔记

时间:2023-03-08 10:57:08浏览次数:39  
标签:listNode struct redis 笔记 学习 哈希 字符串 节点

一、简单动态字符串

SDS定义

struct sdsstr{

//已保存的字符串长度

int len;

//数组还剩余的空间

int free;

//保存字符串的字节数组

char buf[];

}

获取字符串长度O(1)、杜绝缓冲区溢出、内存重新分配次数、存储二进制

二、链表

redis重构了自己的链表实现

typedef struct listNode{

//前置节点

struct listNode *prev;

//后置节点

struct listNode *next;

//节点的值

void *value;

}listNode;

三、字典

redis的字典使用哈希表作为底层实现,一个哈希表可以有多个哈希表节点,

每个哈希表节点就保存了字典中的一个键值对。

 

 

 

 

 

 

 redis采用渐进式rehash操作进行扩展

四、跳跃表

 

标签:listNode,struct,redis,笔记,学习,哈希,字符串,节点
From: https://www.cnblogs.com/gaoshikenan/p/17191193.html

相关文章

  • springboot redis 发布与订阅
    发布与订阅Redis的发布与订阅功能可以让客户端通过广播方式,将消息(message)同时发送给可能存在的多个客户端,并且发送消息的客户端不需要知道接收消息的客户端的具体信息。......
  • 简单学习使用Tomcat
    安装Tomcat从Tomcat官方网站(https://tomcat.apache.org/)下载Tomcat安装包。在下载完成后,您可以按照以下步骤进行安装:解压Tomcat安装包到您想要安装Tomcat的目录中。......
  • Redis常用命令与操作
    简介redis是以key-value格式存储数据的缓存数据库。它支持存储的value类型很多,包括string(字符串)、list(链表)、set(集合)、zset(sortedset--有序集合)和hash(哈希类型......
  • http心得学习
    http协议简介http协议,即超文本传输协议(Hypertexttransferprotocol)。是一种详细规定了浏览器和万维网服务器之间互相通信的规则,通过因特网传输文档的数据传送协议。http......
  • http协议的学习随笔
    HTTP协议是Web应用程序开发中最重要的协议之一。在这篇博客中,我将为大家介绍HTTP协议的基本知识,包括请求和响应、状态码以及常用的HTTP方法。请求和响应HTTP协议是一种客......
  • python+playwright 学习-22理解Locator 定位机制与元素句柄 ElementHandle
    前言ElementHandle表示页内DOM元素。ElementHandles可以使用page.query_selector()方法创建。如果你能理解ElementHandle和Locator定位机制,那也就明白了selenium......
  • Go语言学习第一天
    packagemainimport"fmt"funcmain(){/*这是我的第一个简单的程序*/fmt.Println("Hello,World!")}第一行代码packagemain定义了包名。你必须在源......
  • vue-router的笔记
    路由:hash地址与组件之间的对应关系SPA:单页面应用程序前端路由的工作方式1、用户点击了页面上的路由链接2、导致了url地址栏的hash值变化3、前端路由监听到了hash地址......
  • luffy登录注册页面 redis介绍安装 redis普通连接与连接池 redis数据类型 redis字符串
    目录回顾登录页面分析代码登录页面注册页面Redis介绍与安装介绍:面试题:redis为什么这么快?安装安装目录启动客户端连接Redis普通连接和连接池普通连接连接池连接传统方案连接......
  • 关于sklearn,监督学习几种模型的对比
    喜欢这篇文章的话,就点个关注吧,或者关注一下我的公众号也可以,会持续分享高质量Python文章,以及其它相关内容。:点击查看公众号123456789101112131415......