做调查问卷的网站知晓程序 小程序商店
- 作者: 多梦笔记
- 时间: 2026年02月16日 16:05
当前位置: 首页 > news >正文
做调查问卷的网站,知晓程序 小程序商店,潍坊市做网站的公司,打开一个不良网站提示创建成功一#xff0c;哨兵的作用#xff1a; 通过发送命令#xff0c;让Redis服务器返回监控其运行状态#xff0c;包括主服务器和从服务器。当哨兵监测到master宕机#xff0c;会自动将slave切换成master#xff0c;然后通过发布订阅模式通知其他的从服务器#xff0c;修改配…一哨兵的作用 通过发送命令让Redis服务器返回监控其运行状态包括主服务器和从服务器。当哨兵监测到master宕机会自动将slave切换成master然后通过发布订阅模式通知其他的从服务器修改配置文件让它们切换主机。、 二哨兵的核心配置 sentinel monitor mymaster 127.0.0.1 6379 1 数字1表示 当一个哨兵主观认为主机断开就可以客观认为主机故障然后开始选举新的主机。 三测试 1创建文件 redis-sentinel xxx/sentinel.conf 2成功启动哨兵模式 此时哨兵监视着我们的主机6379当我们断开主机后 四哨兵模式优缺点 优点 哨兵集群基于主从复制模式所有主从复制的优点它都有 主从可以切换故障可以转移系统的可用性更好 哨兵模式是主从模式的升级手动到自动更加健壮 缺点 Redis不好在线扩容集群容量一旦达到上限在线扩容就十分麻烦 实现哨兵模式的配置其实是很麻烦的里面有很多配置项 五哨兵模式的全部配置 完整的哨兵模式配置文件 sentinel.conf
Example sentinel.conf# 哨兵sentinel实例运行的端口 默认26379
port 26379# 哨兵sentinel的工作目录 dir /tmp# 哨兵sentinel监控的redis主节点的 ip port
master-name 可以自己命名的主节点名字 只能由字母A-z、数字0-9 、这三个字符.-_组成。
quorum 当这些quorum个数sentinel哨兵认为master主节点失联 那么这时 客观上认为主节点失联了
sentinel monitor master-name ip redis-port quorum
sentinel monitor mymaster 127.0.0.1 6379 1# 当在Redis实例中开启了requirepass foobared 授权密码 这样所有连接Redis实例的客户端都要提供密码
设置哨兵sentinel 连接主从的密码 注意必须为主从设置一样的验证密码
sentinel auth-pass master-name password
sentinel auth-pass mymaster MySUPER–secret-0123passw0rd# 指定多少毫秒之后 主节点没有应答哨兵sentinel 此时 哨兵主观上认为主节点下线 默认30秒
sentinel down-after-milliseconds master-name milliseconds
sentinel down-after-milliseconds mymaster 30000# 这个配置项指定了在发生failover主备切换时最多可以有多少个slave同时对新的master进行 同步 这个数字越小完成failover所需的时间就越长 但是如果这个数字越大就意味着越 多的slave因为replication而不可用。 可以通过将这个值设为 1 来保证每次只有一个slave 处于不能处理命令请求的状态。
sentinel parallel-syncs master-name numslaves
sentinel parallel-syncs mymaster 1# 故障转移的超时时间 failover-timeout 可以用在以下这些方面
#1. 同一个sentinel对同一个master两次failover之间的间隔时间。
#2. 当一个slave从一个错误的master那里同步数据开始计算时间。直到slave被纠正为向正确的master那里同步数据时。
#3.当想要取消一个正在进行的failover所需要的时间。
#4.当进行failover时配置所有slaves指向新的master所需的最大时间。不过即使过了这个超时slaves依然会被正确配置为指向master但是就不按parallel-syncs所配置的规则来了
默认三分钟
sentinel failover-timeout master-name milliseconds
sentinel failover-timeout mymaster 180000# SCRIPTS EXECUTION#配置当某一事件发生时所需要执行的脚本可以通过脚本来通知管理员例如当系统运行不正常时发邮件通知相关人员。 #对于脚本的运行结果有以下规则 #若脚本执行后返回1那么该脚本稍后将会被再次执行重复次数目前默认为10 #若脚本执行后返回2或者比2更高的一个返回值脚本将不会重复执行。 #如果脚本在执行过程中由于收到系统中断信号被终止了则同返回值为1时的行为相同。 #一个脚本的最大执行时间为60s如果超过这个时间脚本将会被一个SIGKILL信号终止之后重新执行。#通知型脚本:当sentinel有任何警告级别的事件发生时比如说redis实例的主观失效和客观失效等等将会去调用这个脚本 #这时这个脚本应该通过邮件SMS等方式去通知系统管理员关于系统不正常运行的信息。调用该脚本时将传给脚本两个参数 #一个是事件的类型 #一个是事件的描述。 #如果sentinel.conf配置文件中配置了这个脚本路径那么必须保证这个脚本存在于这个路径并且是可执行的否则sentinel无法正常启动成功。 #通知脚本
sentinel notification-script master-name script-pathsentinel notification-script mymaster /var/redis/notify.sh# 客户端重新配置主节点参数脚本
当一个master由于failover而发生改变时这个脚本将会被调用通知相关的客户端关于master地址已经发生改变的信息。
以下参数将会在调用脚本时传给脚本:
master-name role state from-ip from-port to-ip to-port
目前state总是“failover”,
role是“leader”或者“observer”中的一个。
参数 from-ip, from-port, to-ip, to-port是用来和旧的master和新的master(即旧的slave)通信的
这个脚本应该是通用的能被多次调用不是针对性的。
sentinel client-reconfig-script master-name script-path
sentinel client-reconfig-script mymaster /var/redis/reconfig.sh 六Java中使用哨兵模式 /*** 测试Redis哨兵模式* author liu*/ public class TestSentinels {SuppressWarnings(resource)Testpublic void testSentinel() {JedisPoolConfig jedisPoolConfig new JedisPoolConfig();jedisPoolConfig.setMaxTotal(10);jedisPoolConfig.setMaxIdle(5);jedisPoolConfig.setMinIdle(5);// 哨兵信息SetString sentinels new HashSet(Arrays.asList(192.168.11.128:26379,192.168.11.129:26379,192.168.11.130:26379));// 创建连接池JedisSentinelPool pool new JedisSentinelPool(mymaster, sentinels,jedisPoolConfig,123456);// 获取客户端Jedis jedis pool.getResource();// 执行两个命令jedis.set(mykey, myvalue);String value jedis.get(mykey);System.out.println(value);} } bean id poolConfig classredis.clients.jedis.JedisPoolConfig!– 最大空闲数 –property namemaxIdle value50/property!– 最大连接数 –property namemaxTotal value100/property!– 最大等待时间 –property namemaxWaitMillis value20000/property/beanbean idconnectionFactory classorg.springframework.data.redis.connection.jedis.JedisConnectionFactoryconstructor-arg namepoolConfig refpoolConfig/constructor-argconstructor-arg namesentinelConfig refsentinelConfig/constructor-argproperty namepassword value123456/property/bean!– JDK序列化器 –bean idjdkSerializationRedisSerializer classorg.springframework.data.redis.serializer.JdkSerializationRedisSerializer/bean!– String序列化器 –bean idstringRedisSerializer classorg.springframework.data.redis.serializer.StringRedisSerializer/beanbean idredisTemplate classorg.springframework.data.redis.core.RedisTemplateproperty nameconnectionFactory refconnectionFactory/propertyproperty namekeySerializer refstringRedisSerializer/propertyproperty namedefaultSerializer refstringRedisSerializer/propertyproperty namevalueSerializer refjdkSerializationRedisSerializer/property/bean!– 哨兵配置 –bean idsentinelConfig classorg.springframework.data.redis.connection.RedisSentinelConfiguration!– 服务名称 –property namemasterbean classorg.springframework.data.redis.connection.RedisNodeproperty namename valuemymaster/property/bean/property!– 哨兵服务IP和端口 –property namesentinelssetbean classorg.springframework.data.redis.connection.RedisNodeconstructor-arg namehost value192.168.11.128/constructor-argconstructor-arg nameport value26379/constructor-arg/beanbean classorg.springframework.data.redis.connection.RedisNodeconstructor-arg namehost value192.168.11.129/constructor-argconstructor-arg nameport value26379/constructor-arg/beanbean classorg.springframework.data.redis.connection.RedisNodeconstructor-arg namehost value192.168.11.130/constructor-argconstructor-arg nameport value26379/constructor-arg/bean/set/property/bean
- 上一篇: 做钓鱼网站用哪种编程语言精通网站建设 pdf
- 下一篇: 做定制网站价格企业 北京 响应式网站
相关文章
-
做钓鱼网站用哪种编程语言精通网站建设 pdf
做钓鱼网站用哪种编程语言精通网站建设 pdf
- 站长
- 2026年02月16日
-
做电子外贸网站住房和城乡建设部电工证
做电子外贸网站住房和城乡建设部电工证
- 站长
- 2026年02月16日
-
做电子商务网站多少钱建设个人网站需要备案吗
做电子商务网站多少钱建设个人网站需要备案吗
- 站长
- 2026年02月16日
-
做定制网站价格企业 北京 响应式网站
做定制网站价格企业 北京 响应式网站
- 站长
- 2026年02月16日
-
做动画合成的视频网站建筑工程网登
做动画合成的视频网站建筑工程网登
- 站长
- 2026年02月16日
-
做动画视频的网站有哪些网站怎么做长截图
做动画视频的网站有哪些网站怎么做长截图
- 站长
- 2026年02月16日
