Redis
文章平均质量分 71
系统详细的介绍Redis
先锋大眼睛
这个作者很懒,什么都没留下…
展开
-
Redis教程九(缓存穿透和雪崩)
一. 缓存穿透(查不到) 1.概述 缓存穿透的概念很简单,用户想要查询一个数据,发现redis内存数据库没有,也就是缓存没有命中,于是向持久层数据库查询。发现也没有,于是本次查询失败。当用户很多的时候,缓存都没有命中(秒杀!),于是都去请求了持久层数据库。这会给持久层数据库造成很大的压力,这时候就相当于出现了缓存穿透。 2.解决方案 a. 布隆过滤器 布隆过滤器是一种数据结构,对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则丢弃,从而...原创 2021-03-09 19:37:08 · 4085 阅读 · 0 评论 -
Redis教程八(主从复制)
一. 概念 主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(masterleader),后者称为从节点(slave/follower);数据的复制是单向的,只能由主节点到从节点。Master以写为主,Slave以读为主, 默认情况下,每台Redis服务器都是主节点;且一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。 主从复制的作用主要包括: 1、数据冗余︰主从复制实现了数据的热备份,是持久化之外的一种数据冗余方式。 2、故障恢复∶原创 2021-03-09 18:31:17 · 1684 阅读 · 2 评论 -
Redis教程七(订阅发布)
Redis发布订阅(pub/sub)是一种消息通信模式:发送者(pub)发送消息,订阅者(sub)接收消息 Redis客户端可以定义任意数量的频道 1.订阅/发布消息有3个角色: 第一个:消息发布这 第二个:频道 第三个:消息订阅者 2.命令 这些命令广泛用于构建及时通讯应用,比如网络聊天室、实时广播、实时提醒 3.测试 4.原理: Redis是使用C实现的,通过分析Redis 源码里的pubsub.c文件,了解发布和订阅机制的底层实现,籍此加深对Redis的理解。 Red原创 2021-03-09 18:08:24 · 1804 阅读 · 0 评论 -
Redis教程六(持久化)
Redis是内存数据库,如果不将内存中的数据库状态保存到磁盘,那么一旦服务进程退出,服务器中的数据库状态也会消失,所以redis提供了持久化功能 一. RDB 在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是snapshot快照,它恢复时是将快照文件直接读到内存里 Redis会单独创建一个子进程来进行持久化,会先将数据写入一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件。整个过程中,主进程是不进行任何IO操作的。这就是确保了极高的性能。如果需要进行大规模数据的恢复,且原创 2021-03-09 17:49:44 · 1769 阅读 · 0 评论 -
Redis教程五(配置文件)
1.Unit单位对大小写不敏感 2.可以包含多个配置文件 3.网络 4.通用general 5.快照 持久化,在规定的时间内,执行了多少次操作,则会持久化到文件.rab.aof 6.安全sequriepass 可以设置redis密码,默认没用密码 7.限制clients 8.Append only模式aof配置 ...原创 2021-03-09 17:38:29 · 1631 阅读 · 0 评论 -
Redis教程四(Springboot集成Redis)
Springboot操作数据:spring-data jpa jdbc mongodb redis Springdata也是和springboot齐名的项目 说明:在springboot2.X之后,原来使用的jedis被替换为lettuce Jedis:采用的直连,多个线程操作的话,是不安全的,如果响应避免不安全的,使用jedis pool连接池,更像BIO模式 Lettuce:采用netty,实例可以再多个线程中进行共享,不存在线程不安全的情况,可以减少线程数据,更像是NIO模式 1. 源码分析原创 2021-03-09 17:30:25 · 1822 阅读 · 0 评论 -
Redis教程三(事务和Jedis)
一. Redis事务操作 1. 基本事务操作 本质:一组命令的集合,一个事务中的所有命令都会被序列化,在数位执行过程中会按照顺序执行。 一次性、顺序性、排他性。 ------队列set set set 执行------ Redis事务没有隔离级别的概念 所有的命令在事务中,并没有直接被执行,只有发起执行命令的时候才会被执行 Redis单条命令式保存原子性的,但是事务不保证原子性。 Redis的事务:开启事务(multi)、命令入列(…)、执行事务(exec) 正常执行: 放弃事务:原创 2021-03-09 15:46:06 · 1667 阅读 · 1 评论 -
Redis教程二(五大数据类型和三种特殊类型)
一. Redis-key基本命令 二. 字符串类型String 应用: 1.计数器 2.统计多单位的数量 3.粉丝数 4.对象缓存 三. 列表类型List 1. 插入:lpush/rpush 2. 移除一个元素:lpop /lpop 3. 获取值:lindex 4. 获取长度:llen 5. 移除指定个数的值:lrem 6. 修剪:ltrim 7. rpoplpush移除列表的最后一个元素到新的列表中 8. 更原创 2021-03-09 11:56:09 · 1787 阅读 · 1 评论 -
Redis教程一(基础入门)
一. Redis概述 Redis即远程字典服务,开源、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。当下热门的NoSQL技术之一,也被称之为结构化数据库。 能干吗? 内存存储、持久化、内存中是断电即失,所以持久化很重要(rdb、aof) 效率高,可以用于高速缓存 发布订阅系统 地图信息分析 计时器、计数器(浏览量) 特性原创 2021-03-09 10:04:44 · 2101 阅读 · 0 评论