![](https://img-blog.csdnimg.cn/6cceb66df9bc44738a70fdb2898f0c02.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Redis
文章平均质量分 73
redis
凤舞飘伶
这个作者很懒,什么都没留下…
展开
-
redis主从复制
redis主从复制原创 2023-11-14 16:15:59 · 63 阅读 · 0 评论 -
redis内存淘汰策略
redis内存淘汰策略原创 2023-11-08 16:44:25 · 190 阅读 · 0 评论 -
有哪些办法可以降低 Redis 的内存使用情况
有哪些办法可以降低 Redis 的内存使用情况原创 2023-02-27 09:34:01 · 300 阅读 · 0 评论 -
运维排查篇 | Redis占用内存过高怎么办
运维排查篇 | Redis占用内存过高怎么办原创 2023-02-27 09:33:21 · 919 阅读 · 0 评论 -
Redis 4种集群方案介绍+优缺点对比
Redis 4种集群方案介绍+优缺点对比原创 2023-02-27 09:29:56 · 246 阅读 · 0 评论 -
Redis 主从复制的工作原理
Redis 主从复制的工作原理原创 2023-02-27 09:28:09 · 103 阅读 · 0 评论 -
浅析 Redis 主从同步与故障转移原理
浅析 Redis 主从同步与故障转移原理原创 2023-02-27 09:28:01 · 1048 阅读 · 0 评论 -
数据库主从和redis集群配置
数据库 redis原创 2023-01-28 14:53:38 · 145 阅读 · 0 评论 -
Redis监控指标
监控指标•性能指标:Performance•内存指标: Memory•基本活动指标:Basic activity•持久性指标: Persistence•错误指标:Error性能指标:PerformanceName Description latency Redis响应一个请求的时间 instantaneous_ops_per_sec 平均每秒处理请求总数 hi rate(calculated) 缓存命中率(计算出来的 内存指标: MemoryName原创 2021-07-05 14:12:53 · 164 阅读 · 0 评论 -
redis精解
概念 Redis是完全开源免费的,遵守BSD协议,是-一个高性能的key-value数据库。它支持存储的value类型很多,包括string(字符串)、list(链表)、set(集合)、(Zset(有序集合),这些数据类型都支持。push/pop、add/remove及 取交集和并集及更丰富的操作,Redis支持各种不同方式的排序)为了保证效率,数据都是缓存在内存中,它也可以周期性...原创 2019-08-29 22:15:27 · 255 阅读 · 0 评论 -
Redis之Redis内存模型
Redis是目前最火爆的内存数据库之一,通过在内存中读写数据,大大提高了读写速度,可以说Redis是实现网站高并发不可或缺的一部分。我们使用Redis时,会接触Redis的5种对象类型(字符串、哈希、列表、集合、有序集合),丰富的类型是Redis相对于Memcached等的一大优势。在了解Redis的5种对象类型的用法和特点的基础上,进一步了解Redis的内存模型,对Redis的使用有很大帮助,例如:1、估算Redis内存使用量。目前为止,内存的使用成本仍然相对较高,使用内存不能无所顾忌;根据需求合原创 2021-06-24 09:15:46 · 253 阅读 · 1 评论 -
Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
Redis的集群方案大致有三种:1)redis cluster集群方案;2)master/slave主从方案;3)哨兵模式来进行主从替换以及故障恢复。一、sentinel哨兵模式介绍Sentinel(哨兵)是用于监控redis集群中Master状态的工具,是Redis 的高可用性解决方案,sentinel哨兵模式已经被集成在redis2.4之后的版本中。sentinel是redis高可用的解决方案,sentinel系统可以监视一个或者多个redis master服务,以及这些master服务的所有从服原创 2021-06-23 17:01:22 · 328 阅读 · 0 评论 -
redis数据恢复
公司线上一个项目数据存储采用MySQL,共分为10个库,分布在4台机器上,每个库数据量约为10G,各机器均采用RAID5加速磁盘访问;当同时在线人数达高峰期(10w),DB磁盘IO压力巨大,导致访问巨慢,,在线人数就很难上不去了。针对上面描述情况,使用redis后可有效解决这一瓶颈,因为Redis数据读写都是直接操作内。解决方案:将部分数据压缩导入到redis后,总数据量约30G(转换成redis数据类型数据量),一主一从模型,共两组。一台机器内存32G,开10个实例,共20个实例,多实例方便原创 2021-06-23 16:05:38 · 178 阅读 · 0 评论 -
Redis主从复制原理学习
Redis主从复制原理学习总结 - 运维笔记和Mysql主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况。为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redis主从复制可以根据是否是全量分为全量同步和增量同步。下图为级联结构。全量同步Redis全量复制一般发生在Slave初始化阶段,这时Slave需要将Master上的所有数据都复制一份。具体步骤如下:- 从服务器连接主服务器,发送SYNC命令;...原创 2021-06-23 14:57:52 · 104 阅读 · 0 评论 -
Redis Cluster集群
Redis Cluster集群功能推出已经有一段时间了。在单机版的Redis中,每个Master之间是没有任何通信的,所以一般在Jedis客户端或者Codis这样的代理中做Pre-sharding。按照CAP理论来说,单机版的Redis属于保证CP(Consistency & Partition-Tolerancy)而牺牲A(Availability),也就说Redis能够保证所有用户看到相同的数据(一致性,因为Redis不自动冗余数据)和网络通信出问题时,暂时隔离开的子系统能继续运行(分区容忍性,原创 2021-06-23 09:59:57 · 317 阅读 · 0 评论 -
2021-06-22
服务器信息[root@iZs7z01dz0z12dyttz9zn5Z cluster]# /app/redis/redis-3.2.1/src/redis-cli -c -h 10.252.120.9 -p 800310.252.120.9:8003> cluster nodesb1f543d646c5c97a70b0635439a44a72f8a143b1 10.252.120.10:8004 master - 0 1624349601417 7 connected 0-5460..原创 2021-06-23 08:50:25 · 68 阅读 · 0 评论 -
redis-full-check
https://github.com/alibaba/RedisFullCheck/releases redis-full-check是阿里云Redis&MongoDB团队开源的用于校验2个redis数据是否一致的工具。 redis-full-check通过全量对比源端和目的端的redis中的数据的方式来进行数据校验,其比较方式通过多轮次比较:每次都会抓取源和目的端的数据进行差异化比较,记录不一致的数据进入下轮对比(记录在sqlite3 db中)。然后通过多轮比较不断收敛,减少...原创 2021-06-22 15:52:12 · 1574 阅读 · 0 评论 -
Redis数据迁移
Redis常见的数据迁移方式有以下三种:RDB迁移、AOF迁移、主从复制。 使用RDB和AOF文件可以实现跨网络隔离的数据迁移,但是无法做到增量迁移。主从复制可以实现增量迁移但是无法跨网络环境。另外,在过去对于数据迁移后的校验缺乏良好的手段。 redis-shake 是阿里基于redis-port基础上进行改进的一款产品。它支持解析、恢复、备份、同步四个功能。 redis-shake解决了下面四个问题:源库目标库版本不一致 为实现平滑迁移,要求能做增量同步 能快速实现多库批量...原创 2021-06-22 10:26:39 · 6834 阅读 · 0 评论 -
redis核心技术与实战(四)高可用高扩展篇
1.《redis架构组成》1.redis学习维度2.一个基本的键值型数据库包括什么?1.访问框架redis通过网络框架进行访问,使得 Redis 可以作为一个基础性的网络服务进行访问,扩大了redis应用范围;过程:如果客户端发送“put hello world ”这条指令会被包装成一个网络包,服务端收到后进行解析,执行指令;问题:请求连接,解析,数据存取这些操作使用单线程还是多线程呢?如果单线程,其中一个环节出错或阻塞就会导致整个流程阻塞,降低了系统响应速度;如果是多线程原创 2021-06-01 14:04:12 · 174 阅读 · 0 评论 -
redis核心与实战(一)数据结构篇
1.《redis数据结构概览》1.数据结构概览数据模型:一共5种,String(字符串)、List(列表)、Hash(哈希)、Set(集合)和 Sorted Set(有序集合)数据结构:一共有 6 种,分别是简单动态字符串、双向链表、压缩列表、哈希表、跳表和整数数组。对应关系图:2.全局哈希表Redis 使用了一个全局哈希表来保存所有键值对哈希桶中的元素保存的并不是值本身,而是指向具体值的指针。这也就是说,不管值是 String,还是集合类型,哈希桶中的元素都是指向它们的指针。3.原创 2021-06-01 14:02:19 · 317 阅读 · 0 评论 -
redis核心技术与实战(三) 性能篇
影响redis性能主要有以下部分:Redis 内部的阻塞式操作;CPU核和NUMA架构Redis关键系统配置Redis内存碎片Redis缓冲区下面一个个来介绍这些地方1.《redis 有哪些阻塞点?》redis实例主要交互的对象有以下几点,我们依据下面这些点看看redis有哪些阻塞操作:客户端交互:网络IO,增删改查,数据库操作磁盘交互: AOF 同步磁盘,AOF重写,RDB模式持久化从库交互: 数据同步,RDB文件生成,RDB文件传输,清空数据库, 从库加载RDB文件切片集原创 2021-06-01 14:01:04 · 791 阅读 · 0 评论 -
redis核心技术与实战(二)缓存应用篇
redis核心技术与实战(二)缓存应用篇1.《旁路缓存:redis 在缓存中工作原理》1.缓存的两个特征2.redis 中的两种缓存3.question: 只读缓存 与 读写缓存 写操作的区别?2.《缓存淘汰》1.如何设置缓存的 容量大小2.Redis 缓存有哪些淘汰策略3.淘汰的数据怎么处理?4.redis过期策略5.不同淘汰策略的使用场景3.《缓存不一致问题》1.什么情况下缓存是一致的呢?2.读写缓存策略怎么处理数据不一致情况3.只读缓存处理缓存不一致情况1.无并发情况(重原创 2021-06-01 13:57:07 · 848 阅读 · 0 评论 -
Redis 核心技术与实战
目录开篇词 | 这样学 Redis,才能技高一筹 01 | 基本架构:一个键值数据库包含什么? 02 | 数据结构:快速的Redis有哪些慢操作? 键和值用什么结构组织? 为什么哈希表操作变慢了? 有哪些底层数据结构? 不同操作的复杂度 03 | 高性能IO模型:为什么单线程Redis能那么快? Redis 为什么用单线程? 多线程的开销 单线程 Redis 为什么那么快? 基本 IO 模型与阻塞点 非阻塞模式 基于多路复用的高性能 I/O...原创 2021-06-01 11:17:35 · 2296 阅读 · 2 评论 -
Redis的AOF日志
如果 Redis 每执行一条写操作命令,就把该命令以追加的方式写入到一个文件里,然后重启 Redis 的时候,先去读取这个文件里的命令,并且执行它,这不就相当于恢复了缓存数据了吗?这种保存写操作命令到日志的持久化方式,就是 Redis 里的AOF(Append Only File)持久化功能,注意只会记录写操作命令,读操作命令是不会被记录的,因为没意义。在 Redis 中 AOF 持久化功能默认是不开启的,需要我们修改redis.conf配置文件中的以下参数:AOF 日志文件其实...原创 2021-06-01 11:10:09 · 1003 阅读 · 0 评论 -
Redis与MySQL双写一致性如何保证
谈谈一致性一致性就是数据保持一致,在分布式系统中,可以理解为多个节点中数据的值是一致的。 强一致性:这种一致性级别是最符合用户直觉的,它要求系统写入什么,读出来的也会是什么,用户体验好,但实现起来往往对系统的性能影响大 弱一致性:这种一致性级别约束了系统在写入成功后,不承诺立即可以读到写入的值,也不承诺多久之后数据能够达到一致,但会尽可能地保证到某个时间级别(比如秒级别)后,数据能够达到一致状态 最终一致性:最终一致性是弱一致性的一个特例,系统会保证在一定时间内,能够达..原创 2021-05-31 15:15:12 · 105 阅读 · 0 评论 -
16张图带你吃透高性能 Redis 集群
现如今 Redis 变得越来越流行,几乎在很多项目中都要被用到,不知道你在使用 Redis 时,有没有思考过,Redis 到底是如何稳定、高性能地提供服务的?你也可以尝试回答一下以下这些问题: 我使用 Redis 的场景很简单,只使用单机版 Redis 会有什么问题吗? 我的 Redis 故障宕机了,数据丢失了怎么办?如何能保证我的业务应用不受影响? 为什么需要主从集群?它有什么优势? 什么是分片集群?我真的需要分片集群吗? …… 如果你对 Redis转载 2021-05-31 15:06:40 · 214 阅读 · 0 评论 -
缓存雪崩、击穿、穿透解决方案
用户的数据一般都是存储于数据库,数据库的数据是落在磁盘上的,磁盘的读写速度可以说是计算机里最慢的硬件了。当用户的请求,都访问数据库的话,请求数量一上来,数据库很容易就奔溃的了,所以为了避免用户直接访问数据库,会用 Redis 作为缓存层。因为 Redis 是内存数据库,我们可以将数据库的数据缓存在 Redis 里,相当于数据缓存在内存,内存的读写速度比硬盘快好几个数量级,这样大大提高了系统性能。引入了缓存层,就会有缓存异常的三个问题,分别是缓存雪崩、缓存击穿、缓存穿透。这三个问题也是面试转载 2021-03-25 17:39:57 · 314 阅读 · 0 评论