摘要: Redis的flushall/flushdb命令可以做数据清除,对于Redis的开发和运维人员有一定帮助,然而一旦误操作,它的破坏性也是很明显的。怎么才能快速恢复数据,让损失达到最小呢? 假设进行flush操作的Redis是一对主从结构的主节点,其中键值对的个数是100万,每秒写入量是1000。 1 阅读全文
posted @ 2021-05-05 00:59 小家电维修 阅读(750) 评论(0) 推荐(0) 编辑
摘要: 通常来看,Redis开发和运维人员更加关注的是Redis本身的一些配置优化,例如AOF和RDB的配置优化、数据结构的配置优化等,但是对于操作系统是否需要针对Redis做一些配置优化不甚了解或者不太关心。然而事实证明一个良好的系统操作配置能够为Redis服务良好运行保驾护航。 1.内存分配控制 1.v 阅读全文
posted @ 2021-05-05 00:33 小家电维修 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 缓存能够有效地加速应用的读写速度,同时也可以降低后端负载,对日常应用的开发至关重要。但是将缓存加入应用架构后也会带来一些问题,本章将针对这些问题介绍缓存使用技巧和设计方案,包含如下内容: □ 缓存的收益和成本分析。 □ 缓存更新策略的选择和使用场景。 □ 缓存粒度控制方法。 □ 穿透问题优化。 □ 阅读全文
posted @ 2021-05-04 21:31 小家电维修 阅读(198) 评论(0) 推荐(0) 编辑
摘要: Redis Cluster是 Redis的分布式解决方案,在3.0版本正式推出,有效地解决了Redis分布式方面的需求。当遇到单机内存、并发、流量等瓶颈时,可以采用Cluster架构方案达到负载均衡的目的。之前,Redis分布式方案一般有两种: □ 客户端分区方案,优点是分区逻辑可控,缺点是需要自己 阅读全文
posted @ 2021-05-04 14:43 小家电维修 阅读(144) 评论(0) 推荐(0) 编辑
摘要: Redis的主从复制模式下,一旦主节点由于故障不能提供服务,需要人工将从节点晋升为主节点,同时还要通知应用方更新主节点地址,对于很多应用场景这种故障处理的方式是无法接受的。可喜的是Redis从 2.8开始正式提供了 Redis Sentinel (哨兵)架构来解决这个问题。 1.基本概念 由于对Re 阅读全文
posted @ 2021-05-01 21:58 小家电维修 阅读(89) 评论(0) 推荐(0) 编辑
摘要: Redis所有的数据都存在内存中,当前内存虽然越来越便宜,但跟廉价的硬盘相比成本还是比较昂贵,因此如何高效利用Redis内存变得非常重要。高效利用Redis内存首先需要理解Redis内存消耗在哪里,如何管理内存,最后才能考虑如何优化内存。 1.内存消耗 首先需要掌握Redis内存消耗在哪些方面。有些 阅读全文
posted @ 2021-04-29 18:47 小家电维修 阅读(162) 评论(0) 推荐(0) 编辑
摘要: 1. 浮动目录栏 1.1 页面定制CSS代码 /* 设置签名格式 定制css样式 */ #MySignature { display: none; background-color: #FAEBD7; border-radius: 10px; box-shadow: 1px 1px 1px #6B6 阅读全文
posted @ 2021-04-27 20:40 小家电维修 阅读(62) 评论(0) 推荐(0) 编辑
摘要: Redis是典型的单线程架构,所有的读写操作都是在一条主线程中完成的。当Redis用于高并发场景时,这条线程就变成了它的生命线。如果出现阻塞,哪怕是很短时间,对于我们的应用来说都是噩梦。导致阻塞问题的场景大致分为内在原因和外在原因: □ 内在原因包括: 不合理地使用API或数据结构、CPU饱和、持久 阅读全文
posted @ 2021-04-27 19:02 小家电维修 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 1.配置 1.1 建立复制 参与复制的Redis实例划分为主节点(master) 和从节点(slave)。默认情况下,Redis都是主节点。每个从节点只能有一个主节点,而主节点可以同时具有多个从节点。复制的数据流是单向的,只能由主节点复制到从节点。配置复制的方式有以下三种: 1) 在配置文件中加入s 阅读全文
posted @ 2021-04-27 11:59 小家电维修 阅读(260) 评论(0) 推荐(0) 编辑
摘要: 1.RDB RDB持久化是把当前进程数据生成快照保存到硬盘的过程,触发RDB持久化过程分为手动触发和自动触发。 1.1 触发机制 手动触发分别对应save和bgsave命令: □ save命令:阻塞当前Redis服务器,直到RDB过程完成为止,对于内存比较大的实例会造成长时间阻塞,线上环境不建议使用 阅读全文
posted @ 2021-04-26 19:29 小家电维修 阅读(234) 评论(0) 推荐(0) 编辑
摘要: 1.客户端管理 Redis提供了客户端相关API对其状态进行监控和管理,本节将深入介绍各个API的使用方法以及在开发运维中可能遇到的问题。 1.1 客户端API 1.client list client list命令能列出与Redis服务端相连的所有客户端连接信息,例如下面代码是在一个Redis实例 阅读全文
posted @ 2021-04-25 23:55 小家电维修 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 1. Pipeline 1.1 Pipeline概念 Redis客户端执行一条命令分别为如下4个过程: 1) 发送命令 2) 命令排队 3) 命令执行 4) 返回结果 其中1)+4)称为Round Trip Time(RTT,往返时间)。 Redis提供了批量操作命令(例如mget、mset等),有 阅读全文
posted @ 2021-04-23 19:45 小家电维修 阅读(990) 评论(0) 推荐(0) 编辑
摘要: Redis提供了redis-cli、redis-server、redis-benchmark 等shell工具。 1.redis-cli详解 了解redis-cli的全部参数,可以执行redis-cli -help命令来进行查看,下面将对一些重要参数的含义以及使用场景进行说明。 1.-r -r (r 阅读全文
posted @ 2021-04-23 14:44 小家电维修 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 1. Redis的作用 1.1 Redis可以做什么 1.缓存:缓存机制几乎在所有的大型网站都有使用,合理地使用缓存不仅可以加快数据的访问速度,而且能够有效地降低后端数据源的压力。Redis提供了键值过期时间设置,并且也提供了灵活控制最大内存和内存溢出后的淘汰策略。可以这么说,一个合理的缓存设计能够 阅读全文
posted @ 2021-04-22 19:55 小家电维修 阅读(143) 评论(0) 推荐(0) 编辑
摘要: Redis借鉴了 Linux操作系统对于版本号的命名规则:版本号第二位如果是奇数.则为非稳定版本(例如2.7、2.9、3.1),如果是偶数,则为稳定版本(例如2.6、2.8、3.0、3.2)。当前奇数版本就是下一个稳定版本的开发版本,例如2.9版本是3.0版本的开发版本。所以我们在生产环境通常选取偶 阅读全文
posted @ 2021-04-20 20:26 小家电维修 阅读(116) 评论(0) 推荐(0) 编辑