前言 背景:测试环境的redis集群被运维回收,无奈之下只能自己动手,Redis高可用集群架构的搭建。 ####原理 Redis的哨兵(sentinel)系统用于管理多个redis服务器,该系统执行以下三个任务: 监控(Monitoring):哨兵(sentinel)会不断地检查你的Master和S ...
分类:
其他好文 时间:
2020-05-26 18:25:22
阅读次数:
67
Redis为什么需要集群? 首先Redis单实例主要有单点,容量有限,流量压力上限的问题。 Redis单点故障,可以通过主从复制replication,和自动故障转移sentinel哨兵机制。 但Redis单Master实例提供读写服务,仍然有容量和压力问题,因此需要数据分区,构建多个Master实 ...
分类:
其他好文 时间:
2020-05-24 18:07:28
阅读次数:
302
本期实现的功能很简单,协程的重头都在co_await和异步操作上,generator本身是一个很轻的东西如果你看到这行文字,说明这篇文章被无耻的盗用了(或者你正在选中文字),请前往 cnblogs.com/pointer-smq 支持原作者,谢谢基本结构generator和future/promis... ...
分类:
编程语言 时间:
2020-05-24 13:59:39
阅读次数:
102
Sentinel热点参数限流 何为热点?热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如: 商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制 用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制 热点参数 ...
分类:
编程语言 时间:
2020-05-24 12:12:08
阅读次数:
74
Sentinel熔断降级 Sentinel除了流量控制以外,对调用链路中不稳定的资源进行熔断降级也是保障高可用的重要措施之一。由于调用关系的复杂性,如果调用链路中的某个资源不稳定,最终会导致请求发生堆积。Sentinel 熔断降级会在调用链路中某个资源出现不稳定状态时(例如调用超时或异常比例升高), ...
分类:
编程语言 时间:
2020-05-23 19:59:21
阅读次数:
55
iter: def iter(source, sentinel=None): # known special case of iter """ iter(iterable) -> iterator iter(callable, sentinel) -> iterator Get an iterato ...
分类:
编程语言 时间:
2020-05-21 21:16:23
阅读次数:
88
虽然现在使用哨兵+主从的方式比较少了,但通过理解 Redis 哨兵,我们能获得更深入的分布式的知识。 https://redis.io/topics/sentinel sentinel基本配置 sentinel的作用: 1、监控 2、通知 3、自动故障转移 (1.投票决策master是否挂了,如果投 ...
分类:
其他好文 时间:
2020-05-21 19:03:54
阅读次数:
56
热点即经常访问的数据。很多时候我们希望统计某个热点数据中访问频次最高的 Top K 数据,并对其访问进行限制。比如: 商品 ID 为参数,统计一段时间内最常购买的商品 ID 并进行限制 用户 ID 为参数,针对一段时间内频繁访问的用户 ID 进行限制 热点参数限流会统计传入参数中的热点参数,并根据配 ...
分类:
其他好文 时间:
2020-05-20 09:28:49
阅读次数:
87
一、引入pom <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId> </dependency> 二、配置YML文件 serve ...
分类:
编程语言 时间:
2020-05-17 16:02:17
阅读次数:
127
关于reids集群会由于网络等原因出现脑裂的情况,所谓的集群脑裂就是,由于redis master节点和redis salve节点和sentinel处于不同的网络分区,使得sentinel没有能够心跳感知到master,所以通过选举的方式提升了一个salve为master,这样就存在了两个maste ...
分类:
其他好文 时间:
2020-05-15 20:15:18
阅读次数:
248