![](https://img-blog.csdnimg.cn/20210701143448914.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
redis
文章平均质量分 78
围绕redis展开的学习及笔记专栏
大Null
Alias:一位木带感情的码农。
因CSDN过于商业化,博主已转战Github,所有资源均已迁移至Github个人网站,具体地址请查看详细资料。
展开
-
Redis缓存穿透、缓存击穿、缓存雪崩
目录前言缓存穿透1. 概念2. 解决方案缓存击穿1. 概念2. 解决方案缓存雪崩1. 概念2. 解决方案前言Redis 缓存的使用,极大的提升了应用程序的性能和效率,特别是数据查询方面。但同时,它也带来了一些问题。其中,最要害的问题,就是数据的一致性问题,从严格意义上讲,这个问题无解。如果对数据的一致性要求很高,那么就不能使用缓存。另外的一些典型问题就是,缓存穿透、缓存雪崩和缓存击穿,这些问题都影响着服务的高可用性。目前,业界也都有比较流行的解决方案。这里要特别感谢b站的up主:狂神说,在我Re原创 2021-09-06 16:37:36 · 173 阅读 · 0 评论 -
Redis哨兵模式详解
目录前言哨兵模式的概述怎么开启哨兵模式哨兵模式的全部配置复制延时故障恢复的流程哨兵模式的优缺点前言当主服务器宕机后,需要手动把一台从节点服务器切换为主节点服务器,这就需要认为干预,费时费力,还会造成一段时间内服务不可用。所以更多时候,我们优先考虑哨兵模式。Redis 从 2.8 开始正式提供了 Sentinel(哨兵)结构来解决这个问题。哨兵模式的概述哨兵模式是一种特殊的模式,首先 Redis 提供了哨兵的命令,哨兵是一个独立的进程,它会独立运行。其原理是哨兵通过发送命令,等待 Redis 服务器响原创 2021-09-06 15:16:41 · 2146 阅读 · 0 评论 -
Redis主从复制
目录主从复制的概念主从复制的作用如何开启主从复制主从复制的原理主从复制的概念主从复制,是指将一台 Redis 服务器的数据,复制到其他的 Redis 服务器,前者成为主节点(Master/Leader),后者称为从节点(Slave/Follower)。数据的复制是单向的,只能由主节点复制到从节点。Master 以写为主,Slave 以读为主。默认情况下,每台 Redis 服务器都是主节点。一个主节点可以有多个从节点(或没有从节点),但一个从节点只能有一个主节点。主从复制的作用数据冗余主从原创 2021-09-06 11:32:17 · 131 阅读 · 0 评论 -
Redis的发布和订阅
目录什么是发布和订阅发布、订阅的流程命令行实现发布订阅发布、订阅的原理什么是发布和订阅Redis 发布订阅 (pub/sub) 是一种消息通信模式:发送者 (pub) 发送消息,订阅者 (sub) 接收消息。Redis 客户端可以订阅任意数量的频道。发布、订阅的流程客户端可以订阅频道当给这个频道发布消息后,消息就会发送给订阅的客户端命令行实现发布订阅subscribe channel1打开一个客户端订阅 channel1publish channel1 hello打开另一个客原创 2021-09-03 17:29:08 · 135 阅读 · 0 评论 -
Redis的持久化操作
目录RDB(Redis DataBase)1. 官网介绍2. RDB的定义3. 备份是如何执行的4. Fork5. RDB持久化流程6. rdb文件7. 文件保存位置8. 如何触发RDB快照9. stop-writes-on-bgsave-error10. rdbcompression 压缩文件11. rdbchecksum 检查完整性12. rdb的备份及恢复13. RDB的优劣势14. 总结AOF(Append Of File)1. AOF的定义2. AOF持久化流程3. AOF默认不开启4. AOF和原创 2021-09-03 16:22:32 · 511 阅读 · 0 评论 -
Redis配置文件详解
目录#### NETWORK(网络)######## GENERAL(通用)######## SNAPSHOTTING(快照)######## REPLICATION(主从复制)######## SECURITY(安全)####单位:配置文件对unit单位大小写不敏感可以包含多个配置文件#### NETWORK(网络)####绑定的IP,默认只接受本机的访问请求,生产环境要写应用服务器的地址如果开启了protected-mode,那么在没有设定bind ip且没有设密码的情况下,原创 2021-08-30 12:35:35 · 919 阅读 · 0 评论 -
Redis的事务操作、乐观锁
目录1. 事务的定义2. 事务的提交3. 事务的错误处理4. 为什么要做成事务5. 事务冲突的问题5.1 举例5.2 悲观锁5.3 乐观锁5.4 watch监视6. Redis事务的三大特性1. 事务的定义Redis事务是一个单独的隔离操作:事务中的所有命令都会序列化、按顺序地执行。事务在执行的过程中,不会被其他客户端发送来的命令请求所打断。本质上就是一组命令的集合,一个事务中的所有命令都会被序列化,按顺序执行。Redis事务的主要作用就是串联多个命令防止别的命令插队。所有的命令在事务中,并没有直原创 2021-08-17 14:25:19 · 794 阅读 · 0 评论 -
Redis的基本数据类型与特殊数据类型详解
目录一、官网介绍二、Redis常用的五大数据类型1. String(字符串)一、官网介绍Redis 是一个开源(BSD许可)的,内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件。 它支持多种类型的数据结构,如字符串(strings), 散列(hashes),列表(lists),集合(sets),有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs 和 地理空间(geospatial) 索引半径查询。 Redis 内置了 复制(replication)原创 2021-07-29 17:31:38 · 906 阅读 · 0 评论 -
Redis单线程为什么还这么快?
目录官网的解释Redis为什么是单线程的?Redis单线程的优势和劣势Redis速度为什么那么快?Redis的多路IO复用Redis的持久化官网的解释CPU并不是您使用Redis的瓶颈,因为通常Redis要么受内存限制,要么受网络限制。例如,使用在一般Linux系统上运行的流水线Redis每秒可以发送一百万个请求,因此,如果您的应用程序主要使用O(N)或O(log(N))命令,则几乎不会使用过多的CPU 。但是,为了最大程度地利用CPU,您可以在同一服务器上启动多个Redis实例,并将它们视为不同的原创 2021-07-12 20:15:39 · 557 阅读 · 1 评论 -
Redis命令详解
目录全局命令数据库管理针对key的操作Hash操作列表List操作1. 添加2. 查找3. 删除4. 修改5. 阻塞操作Set操作(不可重复)1. 集合内的操作2. 集合间的操作ZADD操作(有序集合)pub/sub(发布、订阅)Transaction(事务)Connection(连接)Server(服务器)全局命令查看当前所有keykeys *判断某个key是否存在(存在返回1,不存在返回0)exists key查看key是什么类型(key不存在返回none)type key原创 2021-06-24 18:23:02 · 1624 阅读 · 0 评论 -
Redis6.2.3安装教程
首先在redis官网下载软件包,网址如下:https://redis.io/download下载后将包上传到Linuxtar -zxvf redis-6.2.3.tar.gz 解压后并进入解压后的目录使用make命令编译软件报错是因为缺少部分依赖包依次执行下面的命令yum -y install gccyum -y install centos-release-sclyum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devt.原创 2021-05-25 15:08:13 · 1295 阅读 · 0 评论 -
redis.clients.jedis.exceptions.JedisDataException: DENIED Redis is running in protected mode because
今天在测试时redis报错:redis.clients.jedis.exceptions.JedisDataException:拒绝redis在保护模式下运行,因为已启用保护模式,未指定绑定地址,未向客户端请求身份验证密码。在这种模式下,只接受来自环回接口的连接。如果您想从外部计算机连接到Redis,您可以采用以下解决方案之一:1)通过从服务器运行的同一主机连接到Redis,只需禁用保护模式,从环回接口发送命令’CONFIG SET protected mode no’,不过,如果你这样做的话,请确保Re原创 2021-05-25 15:20:50 · 2015 阅读 · 0 评论 -
Redis6.2.3启动教程
目录前台启动(不推荐)后台启动(推荐)前台启动(不推荐)通过 redis-server 命令启动,使用默认配置文件(命令行窗口不能关闭,否则服务停止)后台启动(推荐)修改 redis.conf 文件,将daemonize no 改成 yes,让服务在后台启动通过 redis-server redis.conf 命令启动Redis(不在安装目录下需要指定文件路径)redis-server 你的reids安装路径/bin/redis.conf用客户端访问 redis-cliredis原创 2021-06-21 15:35:46 · 1576 阅读 · 0 评论 -
Redis的简单学习
目录标题1. Redis是什么?2. Redis能干什么?3. Redis的特性4. Redis的安装5. 默认的安装文件6. Redis的启动1. Redis是什么?Redis(Remote Dictionary Server),即远程字典服务。是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供了多种语言的API。当下最热门的 NoSQL 技术之一,也被称为结构化数据库。2. Redis能干什么?内存存储、持久化数据效率高,可配合原创 2021-06-21 15:45:12 · 605 阅读 · 0 评论 -
redis-benchmark性能测试详解
redis-benchmark是Redis自带的压测工具压测命令:redis-benchmark -h 127.0.0.1 -p 6379 -c 50 -n 10000压测需要一段时间来完成,因为它需要依次压测多个命令的结果:get、set、incr、lpush等等,如果只需要压测某个命令,如:get,那么可以在以上的命令后加一个参数 -t:redis-benchmark -h 127.0.0.1 -p 6086 -c 50 -n 10000 -t get压测出来的结果很长,我这里就不全部截原创 2021-06-24 16:41:09 · 2575 阅读 · 0 评论