实战:Redis哨兵模式(上)

上一篇我们讲了主从复制模式,它是属于 Redis 多机运行的基础,但这种模式本身存在一个致命的问题,当主节点奔溃之后,需要人工干预才能恢复 Redis 的正常使用。

例如,我们有 3 台服务器做了主从复制,一个主服务器 A 和两个从服务器 B、C,当 A 发生故障之后,需要人工把 B 服务器设置为主服务器,同时再去 C 服务器设置成从服务器并且从主服务器 B 同步数据,如果是发生在晚上或者从服务器节点很多的情况下,对于人工来说想要立即实现恢复的难度很多,所以我们需要一个自动的工具——Redis Sentinel(哨兵模式)来把手动的过程变成自动的,让 Redis 拥有自动容灾恢复(failover)的能力。

哨兵模式如下所示:

哨兵模式.png

小贴士:Redis Sentinel 的最小分配单位是一主一从。

Redis Sentinel 搭建

Redis 官方提供了 Redis Sentinel 的功能,它的运行程序保存在 src 目录下,如图所示:

image.png

我们需要使用命令 ./src/redis-sentinel sentinel.conf 来启动 Sentinel,可以看出我们在启动它时必须设置一个 sentinel.conf 文件,这个配置文件中必须包含监听的主节点信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/545395.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Oracle plsql 打包

--打包 --创建包 --步骤: --1、声明(创建包头) --2、创建数据对象(创建包体)--1、 create or replace package myPack asv_bookCount integer;procedure p_back(v_stuid borrow.stuid%type,v_bid borrow.bid%type);fun…

计算机网络(第四章网络层)

第四章网络层4.1_网络层提供的两种服务(1)虚电路服务(2)数据报服务4.2_网络协议4.2.1_虚拟互连网络4.2.2_分类的IP地址(1)分类IP地址三种分类方法IP 地址的一些重要特点4.2.3_IP地址与硬件地址4.2.4_地址解…

Java ObjectInputStream readShort()方法(带示例)

ObjectInputStream类readShort()方法 (ObjectInputStream Class readShort() method) readShort() method is available in java.io package. readShort()方法在java.io包中可用。 readShort() method is used to read 2 bytes of short value from this ObjectInputStream. re…

实战:Redis 主从同步

主从同步(主从复制)是 Redis 高可用服务的基石,也是多机运行中最基础的一个。我们把主要存储数据的节点叫做主节点 (master),把其他通过复制主节点数据的副本节点叫做从节点 (slave),如下图所示: 在 Redis 中一个主节点可以拥有多个从节点,一个从节点也可以是其他服务…

Oracle view 小结片段

以前下载了一个关于Oracle 视图的pdf,水平有限,没看懂多少。 版本信息: select * from v$version; 数据库信息: select name, created, log_mode from v$database; 基本的许可信息 select * from v$license; 数据库中已安装的…

idea连接sqlserver及数据库操作

idea连接sqlserver及操作一、在连接过程中遇到的问题:(1)数据库登录失败(2)登录成功之后数据库端口号怎么查看二、代码连接数据库①加载驱动和连接数据库三、数据库操作连接详解链接 总体流程链接 操作实例链接 一、…

Java ObjectInputStream readFloat()方法与示例

ObjectInputStream类readFloat()方法 (ObjectInputStream Class readFloat() method) readFloat() method is available in java.io package. readFloat()方法在java.io包中可用。 readFloat() method is used to read 4 bytes (i.e. 32 bit) of float value from this ObjectI…

实战:Redis 集群模式(上)

Redis Cluster 是 Redis 3.0 版本推出的 Redis 集群方案,它将数据分布在不同的服务区上,以此来降低系统对单主节点的依赖,并且可以大大的提高 Redis 服务的读写性能。 Redis 将所有的数据分为 16384 个 slots(槽),每个节点负责其中的一部分槽位,当有 Redis 客户端连接集…

java 调用 Oracle 存储过程

一个函数本质上一个返回一个结果的存储过程,这个例子示范了怎么调用有in、out和in/out参数的函数。 大同小异的方法。    CallableStatement cs; try { // 调用一个没有参数的函数; 函数返回 a VARCHAR // 预处理callable语句 cs connection.prepareCall("…

连接数据库实例

idea连接数据库步骤详解 package com.company; import java.sql.*; public class Main {public static void main(String[] args) {Student student new Student();try {SqlOperation.main();ResultSet resultSet ScoreSql.selectScoreSql();//输出所有行操作while(resultSe…

实战:Redis 哨兵模式(下)

上一篇我们介绍了 Redis Sentinel 的搭建和运行原理,本文我们重点来看下 Sentinel 的命令操作和代码实战。 Sentinel 命令操作 要使用 Sentinel 实现要连接到 Sentinel 服务器,和连接 Redis 服务相同,我们可以使用 redis-cli 来连接 Sentinel,如下命令所示: [@iZ2ze0nc…

java事务处理

有个同学给我的文档,直接发上来了, 在数据库操作中,一项事务是指由一条或多条对数据库更新的sql语句所组成的一个不可分割的工作单元。只有当事务中的所有操作都正常完成了,整个事务才能被提交到数据库,如果有一项操作…

vsftp配置参数

vsftp配置参数 转载:http://blog.chinaunix.net/uid-134240-id-172158.html listen_addressip address 指定侦听IP listen_portport_value 指定侦听端口,默认21 anonymous_enableYES 是否允许使用匿名帐户 local_enableYES 是否允许本地用户登录 …

Java文件类boolean canWrite()方法(带示例)

文件类boolean canWrite() (File Class boolean canWrite()) This method is available in package java.io.File.canRead(). 软件包java.io.File.canRead()中提供了此方法。 This method is used to write the file and the file is represented by the abstract filepath or …

案例:Redis 问题汇总和相关解决方案

本文收集了一些 Redis 使用中经常遇到的一些问题,和与之相对应的解决方案,这些内容不但会出现在实际工作中,也是面试的高频问题,接下来一起来看。 缓存雪崩 缓存雪崩是指在短时间内,有大量缓存同时过期,导致大量的请求直接查询数据库,从而对数据库造成了巨大的压力,严…

实战:Redis 集群模式(下)

上篇文章我们讲了 Redis 集群的搭建与节点的动态添加和删除,我们这里再来简单的复习一下,其中 30001~30006 是我们最初搭建的集群,而 30007 和 30008 是后面动态添加的主从节点,我们使用 --cluster info 命令来看一下主节点和槽位的分配情况,执行代码如下: $ redis-cli …

计网百度脑图

第一章概述 第二章物理层 第三章数据链路层 第四章网络层 第五章运输层

Java Integer类highestOneBit()方法与示例

整数类highestOneBit()方法 (Integer class highestOneBit() method) highestOneBit() method is available in java.lang package. maximumOneBit()方法在java.lang包中可用。 highestOneBit() method is used to find almost only single 1s bit from the leftmost side one …

转载:JAVA获取时间戳,哪个更快

转载:http://hi.baidu.com/suofang/item/96629a060a44c119eafe38cc 目前获取毫秒值大概有下面三种方法 Java代码 //方法 一 System.currentTimeMillis(); //方法 二 Calendar.getInstance().getTimeInMillis(); //方法 三 new Date().getTime(); //方法…

加餐:Redis 的可视化管理工具

因为 Redis 官方只提供了命令行版的 Redis 客户端 redis-cli,以至于我们在使用的时候会比较麻烦,通常要输入一堆命令,而且命令行版的客户端看起来也不够直观,基于以上两个原因我们需要找一个可视化的 Redis 客户端,下面是我这些年使用过的一些 Redis 可视化客户端,分享给…