会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
hulunbao
博客园
首页
新随笔
联系
订阅
管理
2021年1月24日
Redis 事件
摘要: Redis 服务器是个事件驱动程序,服务器处理两类事件: 文件事件(file event):Redis 服务器通过套接字与客户端进行连接,而文件事件就是服务器对套接字操作的抽象。客户端和服务器的网络通信会产生文件事件,而服务器通过监听并处理这些文件来完成一系列网络通信操作。 时间事件(time ev
阅读全文
posted @ 2021-01-24 12:56 hulunbao
阅读(86)
评论(0)
推荐(0)
2021年1月7日
Redis 服务器
摘要: 上一节已经说过 redis 客户端在 redis 服务器的一些属性,并且客户端在跟服务端交互时这些属性起到的作用。 那这一节站在服务器的角度,看看在一次命令请求中,服务器中各个组件是怎么交互的,服务器又是怎么启动起来的。 命令请求的执行过程 一个命令请求从发送到获得回复的过程中, 客户端和服务器需要
阅读全文
posted @ 2021-01-07 22:57 hulunbao
阅读(215)
评论(0)
推荐(0)
2020年12月27日
Redis 客户端
摘要: Redis 是一种一对多服务器程序,一个服务器可以被多个客户端连接,每个客户端向服务端发送请求,服务端处理请求并返回结果给客户端。 但是 Redis 是以单线程的方式运行的,所以 Redis 通过使用 IO 多路复用技术实现的文件处理器,处理多个客户端的请求。这个后面会补充。 这一节我们主要讲一下
阅读全文
posted @ 2020-12-27 23:11 hulunbao
阅读(1016)
评论(0)
推荐(0)
2020年12月11日
Redis 数据库
摘要: 经过上篇文章,介绍了 Redis 中的对象,Redis 是通过这些对象来保存 Redis 数据库中的数据的。这篇我们就看一下Redis数据库在内存中的结构,以及客户端切换数据库、数据库保存键值对、以及对数据的增删改查等操作的实现方法。 我们本地安装 Redis 会安装redis-cli 和 redi
阅读全文
posted @ 2020-12-11 22:53 hulunbao
阅读(115)
评论(0)
推荐(0)
2020年11月27日
Redis 对象
摘要: 通过上几节,我们了解到Redis底层的一些重要的数据结构,比如简单动态字符串、链表、字典、跳跃表等等。 除了这几个还有整数集合,压缩列表。会在本章进行简单的描述。 而Redis,是基于上述几种数据结构创建了对象,再由对象构建Redis数据库,所以每个对象至少用了一种上述的数据结构。 这个对象有字符串
阅读全文
posted @ 2020-11-27 22:07 hulunbao
阅读(159)
评论(0)
推荐(0)
2020年11月13日
Redis 跳跃表
摘要: 跳跃表 咱们可以想象一个场景,我们需要维护一个有序的集合,集合是按照某个字段进行排序的,集合会有添加和删除操作。 如何在内存中存储存储并维护这样的集合呢,我们可以想到链表或者数组进行存储,他们都是线性的结构,我们分别分析下这两种接口存储有序集合的场景。 数组 使用数组维护集合,当插入一个元素时,首先
阅读全文
posted @ 2020-11-13 21:16 hulunbao
阅读(182)
评论(0)
推荐(0)
2020年11月3日
Redis 字典
摘要: 字典 字典,是一种保存键值对(key-value)的抽象数据结构。 在字典中一个key 是独一无二的,并且和一个值(value)进行关联。 字典经常作为数据结构内置在高级编程语言中,比如python,但是Redis是用c编写的,c本身并没有内置字典这个数据结构。因此Redis构建了自己的字典。 字典
阅读全文
posted @ 2020-11-03 23:12 hulunbao
阅读(103)
评论(0)
推荐(0)
Redis 链表实现
摘要: 链表和链表节点的实现 Redis 每个链表节点使用一个 adlist.h/listNode 结构来表示: typedef struct listNode { // 前置节点 struct listNode *prev; // 后置节点 struct listNode *next; // 节点的值 v
阅读全文
posted @ 2020-11-03 11:30 hulunbao
阅读(58)
评论(0)
推荐(0)
2020年10月26日
Redis 简单动态字符串 SDS
摘要: 简单动态字符串 Redis 是用 c 语言编写的,但是 Redis 没有用 c 语言传统的字符串表示(以空字符串结尾的字符数组),而是自己构建了简单动态字符串SDS (simple dynamic string) 的类型。 Redis 默认用 SDS 表示字符串。 当 Redis 需要的不仅仅是一个
阅读全文
posted @ 2020-10-26 10:49 hulunbao
阅读(216)
评论(0)
推荐(0)
2020年10月12日
Redis 事务
摘要: 事务 事务指的程序中一系列严密的逻辑操作,其中包含的操作必须要完成,否则在每个操作中的更改都会被撤销。 举个简单的例子:一群鸭子过河,要么都过去,要么都不过去。 事务的特性 原子性(Atomicity):操作这些指令时,要么全部执行成功,要么全部不执行。只要其中一个指令执行失败,所有的指令都执行失败
阅读全文
posted @ 2020-10-12 14:40 hulunbao
阅读(202)
评论(0)
推荐(0)
下一页
公告