redis
文章平均质量分 62
SSSTing_
这个作者很懒,什么都没留下…
展开
-
Redis五大数据类型底层实现总结
Redis包含字符串、列表、哈希、集合、有序集合五大数据类型,针对每一类型都给出了多种底层实现,使得Redis在执行命令时,能够针对不同的使用场景,dui原创 2021-05-30 12:38:26 · 178 阅读 · 0 评论 -
Redis数据结构——压缩列表
压缩列表是列表键和哈希键的底层实现之一。当一个列表键只包含少量列表项,且每个列表项要么是小整数值,要么是长度较短的字符串,Redis则使用yasuolieb原创 2021-05-29 18:14:56 · 156 阅读 · 0 评论 -
Redis数据结构——整数集合
整数集合是集合键的底层实现之一。当一个集合只包含整数值元素,并且这个集合的元素不多时,Redis会用整数集合作为集合键的底层实现。原创 2021-05-29 17:08:07 · 73 阅读 · 0 评论 -
Redis数据结构——跳跃表
跳跃表是一种有序数据结构,通过在每个节点中维持多个指向其他节点的指针,从而达到快速访问节点的目的。tiaoyuebiaoRedis的有序集合的实现之一原创 2021-05-29 12:36:16 · 91 阅读 · 0 评论 -
Redis数据结构——字典
字典适用于保存键值对的抽象数据结构,一个键可以和一个值进行关联,在字典中,键是唯一的。Redis的数据库是用字典作为底层实现的,字典还是哈希键的原创 2021-05-28 23:06:41 · 112 阅读 · 0 评论 -
Redis数据结构——链表
Redis构建了自己的链表实现,其中列表键的底层实现之一就是链表,Redis的发布订阅、慢查询、监视器等功能也使用到了链表。Redis服务器还使用链表来保存多个客户端的状态信息,以及使用链表laigo...原创 2021-05-28 22:21:15 · 138 阅读 · 0 评论 -
Redis数据结构——简单动态字符串
Redis没有直接使用C语言传统的字符串表示,而是构建了一种名为简单动态字符串(SDS)的抽象类型,将其作为Redis的默认字符串表示。在Redis中,C字符串只作为字符串字面量用在无需对字符串进行修改的地方,当Redis需要一个可被修改的字符串时,会使用SDS表示字符串值。1.SDS数据结构struct sdshdr { int len; // buf数组中已使用的字节长度 int free; // buf数组中未使用的字节长度 char buf[]; .原创 2021-05-26 23:54:10 · 77 阅读 · 0 评论 -
Redis 持久化方式
Redis的数据是保持在内存中的,但当服务器宕机时,内存中的数据会丢失,因此需要将内存中的数据持久化,使得内存数据丢失时能够重新载入。Redis的持久化方式有RDB和AOF两种一、RDB持久化Redis默认采用RDB持久化,可以将Redis在内存中的数据库状态保存到磁盘内,避免数据意外丢失。1.RDB文件的创建(1)当执行save命令或bgsave命令时,会生成RDB文件。两者的区别是,save命令会阻塞Redis服务器进程,此时服务器不能处理任何命令的请求,直至RDB文件创建完成;b..原创 2021-05-20 23:23:30 · 84 阅读 · 0 评论 -
Redis的过期键删除策略及内存回收机制
一、过期键删除策略1. 设定过期时间Redis有四个不同命令可用于设置键的生存时间或过期时间:expire key ttl:将key的生存时间设置为ttl秒 pexpire key ttl:将key的生存时间设置为ttl毫秒 expireat key timestamp:将key的过期时间设置为timestamp所指定的秒数时间戳 pexpireat key timestamp:将key的过期时间设置为timestamp所指定的毫秒时间戳redisDb结构中的expires字典保存了数据原创 2021-05-17 23:22:53 · 195 阅读 · 1 评论 -
Redis 数据类型及常用操作命令介绍
Redis不是简单的键值存储数据库,它实际上是一个支持不同类型值的数据结构服务器。Redis支持的数据类型包括:String字符串、List列表、Set集合、ZSet有序集合、Hash哈希、BitMaps位图、HyperLogLogs、Streams1. String字符串string是Redis最基本的数据类型,一个key对应一个value value可以是每种类型的字符串,其大小不能大于512MB1.1 设置和获取字符串的值其中,如果键对应的值已经设置了,再次调用set命令会将原来的.原创 2021-05-09 15:26:49 · 99 阅读 · 0 评论 -
Redis报错:Failed opening the RDB file dump.rdb for saving: Permission denied
执行如下语句关闭redis服务:src/redis-cli -h 127.0.0.1 -p 6379 shutdown执行失败返回以下提示:查看日志有以下提示:大概就是说在关闭服务之前需要将数据持久化,但是没有操作的权限,因此首先需要创建一个文件夹用于保存我们的数据,然后修改redis.confdbfilename是持久化数据存放的文件,这个可保持原来的值;dir是持久化数据存放的文件夹,需要修改为我们之前创建的文件夹路径,保存后修改data文件夹权限chmod 77原创 2021-05-09 14:13:32 · 4623 阅读 · 3 评论 -
CentOS7 Linux 安装Redis
1.下载源码压缩包sudo wget https://download.redis.io/releases/redis-6.2.3.tar.gz2.解压sudo tar xzf redis-6.2.3.tar.gz3.编译sudo make编译完后目录如下:4. 进入src文件夹启动Redis服务器src/redis-server服务器启动如下:5. 运行客户端src/redis-cli启动客户端后如下:然后就可以执行命令了..原创 2021-05-09 10:31:23 · 67 阅读 · 0 评论