问:骚年,都说Redis很快,那你知道这是为什么吗? 答:英俊潇洒的面试官,您好.我们可以先看一下 关系型数据库 和 Redis 本质上的区别. Redis采用的是基于内存的,采用的是单进程单线程模型的 KV 数据库,有C语言编写,官方提供的数据是可以达到 10w+ 的QPS(每秒内查询次数). 完全基于内存,绝大部分请求是纯粹的内存操作,非常快速.它的数据存在内存中,类似于HashMap,HashMap 的优势就是查找和操作时间的复杂度都是0(1): 数据结构简单,对数据操作也简单,Redis…
一.前言 在之前的系列文章中介绍了redis的入门.持久化以及复制功能,如果不了解请移步至redis系列进行阅读,当然我也是抱着学习的知识分享,如果有什么问题欢迎指正,也欢迎大家转载.而本次将介绍哨兵集群相关知识,包括哨兵集群部署.哨兵原理.相关配置.故障转移等内容,正因为redis有了哨兵机制,而在很多企业(包括笔者自身的公司)采用的是哨兵模式下的redis主从. 二.哨兵(Sentinel)简介  哨兵(后文统称sentinel)是官方推荐的的高可用(HA)解决方案.在之前的文章中介绍过re…
一. Sentinel 高可用环境准备 1.1 Sentinel 集群环境 环境 说明 操作系统版本 CentOS  7.4.1708  IP地址 172.168.18.200 网关Gateway 172.168.18.1 DNS 172.168.16.11 三个sentinel服务端口 26379,26380,26381 Sentinel密码 无 不设置 是否RDB持久化 不支持 是否 AOF持久化 不支持 1.2 Redis主库库环境,主从库搭建在(redis 系列22 复制Replicat…
本篇博客是Redis系列的第5篇,主要讲解下Redis的过期键删除策略. 本系列的前4篇可以点击以下链接查看: Redis系列(一):Redis简介及环境安装 Redis系列(二):Redis的5种数据结构及其常用命令 Redis系列(三):Redis的持久化机制(RDB.AOF) Redis系列(四):Redis的复制机制(主从复制) 划重点:Redis的过期键删除策略也是面试中经常会被问的,我最近面试,被问到了好几次. 对于Redis服务器来说,内存资源非常宝贵,如果一些过期键一直不被删除,…
一.Redis持久化 Redis是一个支持持久化的内存数据库,redis需要经常将内存中的数据同步到磁盘来保证持久化. redis提供了不同级别的持久化方法: Snapshotting(快照,默认方式):能够在指定的时间间隔对你的操作进程快照存储 Append-only file(缩写aof):记录每次对服务器写的操作,当服务器重启时会重新执行这些命令来恢复原始的数据 如果你只希望你的数据在服务器运行的时候存在,你也可以不使用任何持久化方式 你也可以同时开启两种持久化方法,这种情况下,当redi…
1 简介 Sentinel(哨兵)是Redis 的高可用性解决方案:通过哨兵可以创建一个当主服务器出现故障时自动将从服务器升级为主服务器的一个分布式系统.解决了主从复制出现故障时需要人为干预的问题. 这篇介绍哨兵的搭建,以及哨兵是如何进行哨兵发现和主从切换等功能. 2 准备工作 在原先主从的基础上,每台机器启动一个哨兵.架构图如下 2.1 配置 配置文件如下 daemonize yes bind 0.0.0.0 port 26379 dir "/usr/soft/redis" logl…
Redis持久化 一.RDB(Redis DataBase) 1.介绍 在指定的时间间隔内将内存中的数据集快照写入磁盘,也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里. Redis会单独创建(fork)一个子进程来进行持久化,会先将数据写入到一个临时文件中,待持久化过程都结束了,再用这个临时文件替换上次持久化好的文件.整个过程中,主进程是不进行任何IO操作的,这就确保了极高的性能 如果需要进行大规模数据的恢复,且对于数据恢复的完整性不是非常敏感,那RDB方式要比AOF方式…
一.概述 Sentinel(哨岗或哨兵)是Redis的高可用解决方案:由一个或多个Sentinel实例(instance)组成的Sentinel系统(system)可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器,然后由新的主服务器代替已下线的主服务器继续处理命令请求. 1.1 下面是一个Sentinel系统与主从服务器之间的关系: (1) 双环图案的server1是当前的主服务器,以及ser…
一.概念 在指定的时间间隔内将内存中的数据集快照写入磁盘(满足指定时间间隔和操作次数两个条件),也就是行话讲的Snapshot快照,它恢复时是将快照文件直接读到内存里 二.配置文件(redis.conf) ################################ SNAPSHOTTING  ################################ 1.自动备份规则(满足这三种条件其中之一则生成rdb文件)  1 2 3 save 900 1              每隔900秒…
环境搭建 三台服务器: 192.168.126.100(master) 192.168.126.110(slaver) 192.168.126.120(slaver) 拷贝192.168.126.100(主)服务器中的Redis到从机,保证Redis版本.环境一致: scp -r redis-3.2.0/ root@192.168.126.110:/usr/local/ // 安装目录 scp -r redis/ root@192.168.126.110:/usr/local/ // 自定义配置…