
redis
文章平均质量分 83
木子林_
博客是用来做笔记的
展开
-
centos7安装redis5.0
最近趁优惠买了台阿里服务器,需要装一些组件,所以顺便就把安装的流程记录一下,今天我们安装下redis。安装部署redis下载redis的安装包wget http://download.redis.io/releases/redis-5.0.3.tar.gz解压下载的压缩包tar -zxvf redis-5.0.3.tar.gz进入redis文件夹,进行编译在执行编译之前,需要确认有没有安装gcc确认有没有gcc 环境,没有的话可以执行yum install -y gcc.原创 2021-07-10 17:22:23 · 840 阅读 · 3 评论 -
redis实现分布式锁
前言在我们日常的开发中,我们有时候需要考虑一些并发的问题:比如说秒杀,退款等等。针对这个问题我们有很多办法解决,但今天我们从redis的角度去看下怎么解决?原创 2021-06-20 22:10:33 · 350 阅读 · 0 评论 -
redis实现队列的几种方式(LPUSH/BRPOP,发布/订阅模式,stream)
前面我们在redis学习笔记之基本5种数据结构中提到列表实现队列,我们今天就先从队列开始,经过redis的发布订阅,最后以stream来结尾,来简单说说这三个知识点队列redis中通过列表可以来实现队列具体操作可以下面操作rpush/lpop或lpush/rpop实现简单队列127.0.0.1:6379> lpush word a b c d(integer) 4127.0.0.1:6379> llen word(integer) 4127.0.0.1:6379&g原创 2021-04-25 22:20:07 · 11015 阅读 · 0 评论 -
redis学习笔记之持久化(AOF&RDB)
概述redis将数据全部在内存中,如果一不小心宕机,那么数据就会丢失,为了解决这个问题redis通过持久化来解决这个问题。在redis中持久化分为两种:RDB(redisDataBase)和AOF(append only file),接下来我们简单了解下这两种持久化机制。RDB(redisDataBase)实现原理RDB持久化是通过COW(copy on write)机制来实现持久化的。通过fork产生一个子进程,将数据进行遍历读取,然后序列化写到磁盘中。子进程只会对数据进行持久化,并不会对原创 2020-05-10 20:16:08 · 1307 阅读 · 0 评论 -
redis学习笔记之布隆过滤器
什么是布隆过滤器?在redis4.0提供了布隆过滤器,简单的来说布隆过滤器就是一个不怎么精确的set结构,当你使用他的contains去判断某个对象是否存在。当布隆齐说某个值存在的时候,这个值可能不存在,当他说某个值不存在的时候一定不存在。布隆过滤器的简单使用127.0.0.1:6379> bf.add calvinBloom 1(integer) 1127.0.0.1:6...原创 2020-05-07 19:25:26 · 1335 阅读 · 0 评论 -
redis学习笔记之基本5种数据结构
目录1-字符串(string): 1-1:常用命令如下: 1-2:redis底层结构:2-列表(List): 2-1常用命令: 2-2:列表底层实现: 3-2 基本组成:4-集合(set): 4-1常用命令: 4-2 基本组成:5-有序集合(zset): 5-1 常用命令:redis有5种基础数据结构,分别是:字...原创 2020-05-06 20:12:43 · 1357 阅读 · 0 评论 -
redis学习笔记之数据结构-----dict(字典)
概述redis中字典是最为频繁的一种复合型数据结构,除了hash结构本身用到字典外,redis本身就是一个由key,value的全局字典。组成结构//代码来自redis深度历险struct dictht{ //二维 第一维是数组,第二维是链表(当hash取模时如果索引是相同的时候,则放到链表中--键冲突) dictEntry** table; ...原创 2020-05-06 20:10:52 · 1245 阅读 · 0 评论 -
redis学习笔记之数据结构-----skiplist(跳跃表)
概述组成结构操作查询插入分配层数删除更新排名推荐阅读概述redis有序集合它可以需要按照提供的score来进行按顺序获取value列表,也需要一个hash结构来存储value和score的对应关系,为了实现这两个功能,redis对有序集合底层使用了跳跃表来实现。如果你对跳跃表没有了解,建议先去看看小灰讲解跳跃表。组成结构struct zslno...原创 2020-05-06 15:17:48 · 1395 阅读 · 0 评论 -
redis学习笔记之数据结构-----zipset(压缩列表),intset(整数集合),listpack(紧凑列表)
目录概述压缩列表组成结构操作元素级联更新整数集合组成结构升级升级整数集合并添加新元素共分为三步进行:升级之后新元素的摆放位置升级的好处(紧凑列表)listpack组成结构紧凑列表与压缩列表的区别概述在redis中为了节约内存资源,list,zset和hash在对象满足某些条件的情况下,采用了ziplist(压缩列表进行存储)。如...原创 2020-05-06 15:12:44 · 2018 阅读 · 0 评论 -
redis学习笔记之数据结构-----SDS(简单动态字符串)
SDS定义struct sdshdr{ // 记录已使用长度 int len; // 记录空闲未使用的长度 int free; // 字符数组 char[] buf;};如结构体所示:free:未使用空间 len: 记录已使用长度 buf:放数据数据当存入一个数据(redis)时,结构体的内容则为:本图来自r...原创 2020-05-06 19:41:14 · 1373 阅读 · 0 评论