上个文章已经实现了 Redis 的读写分离,一主多从的结构已经搭建起来了,主节点负责写数据,从节点负责读数据,那么现在有个问题:如果主节点挂了,怎么办呢? Redis 提供了一种解决方案:Sentinel 哨兵模式。通过它可以实现:当主节点挂了以后,多个从节点会选出一个节点当主节点。 以 Windo ...
分类:
其他好文 时间:
2020-02-04 18:41:27
阅读次数:
127
在Spring Cloud微服务体系中,由于限流熔断组件Hystrix开源版本不在维护,因此国内不少有类似需求的公司已经将眼光转向阿里开源的Sentinel框架。而以下要介绍的正是作者最近两个月的真实项目实践过程,这中间被不少网络Demo示例级别水文误导过,为了以正视听特将实践过程加以总结,希望能够帮到有类似需要的朋友!
分类:
编程语言 时间:
2020-02-04 10:57:43
阅读次数:
90
在前面的博客中,我给大家演示了使用 @SentinelResource 定义资源完成限流的例子, 下面就从源码解析开始,看下SentinelResource是如何实现限流的,以及@SentinelResource提供了哪些功能,支持哪些属性。 @SentinelResource可以说是Sentine ...
分类:
其他好文 时间:
2020-02-02 21:54:00
阅读次数:
115
这一节我们通过一个简单的实例,学习Sentinel的基本应用。 一、Sentinel 限流核心概念 在学习Sentinel的具体应用之前,我们先来了解一下Sentinel中两个核心的概念,资源和规则。 资源 资源 是 Sentinel 中的核心概念之一。既然是限流,或者系统保护,那么是针对什么做限流 ...
分类:
编程语言 时间:
2020-02-02 12:08:40
阅读次数:
63
1 Redis的主从复制 1.1 什么是主从复制 持久化保证了即使redis服务重启也不会丢失数据,因为redis服务重启后会将硬盘上持久化的数据恢复到内存中,但是当redis服务器的硬盘损坏了可能会导致数据丢失,不过通过redis的主从复制机制就可以避免这种单点故障,如下图: 说明: n 主red ...
分类:
其他好文 时间:
2020-01-31 01:06:35
阅读次数:
104
Sentinel 的使用可以分为核心库和控制台两个部分。 核心库不依赖任何框架/库,集成了主流框架,可以进行单机限流降级等功能, 控制台Dashboard提供了可视化的管理限流规则、对集群进行监控,集群限流分配管理、机器发现等功能。 这篇博客学习 Sentinel 控制台的启动和接入。 一、控制台启 ...
分类:
其他好文 时间:
2020-01-28 19:22:16
阅读次数:
63
提起 Spring Cloud 的限流降级组件,一般首先想到的是 Netflix 的 Hystrix。 不过就在2018年底,Netflix 宣布不再积极开发 Hystrix,该项目将处于维护模式。官方表示 1.5.18 版本的 Hystrix 已经足够稳定,可以满足 Netflix 现有应用的需求 ...
分类:
编程语言 时间:
2020-01-23 09:48:01
阅读次数:
116
说明: sentinel可以作为各微服务的限流,也可以作为gateway网关的限流组件。 spring cloud gateway有限流功能,但此处用sentinel来作为替待。 说明:sentinel流控可以放在gateway网关端,也可以放在各微服务端。 1,以父工程为基础,创建子工程 2,添加 ...
分类:
编程语言 时间:
2020-01-21 21:28:54
阅读次数:
1474
1,应用程序配置中的port选项用于指定在应用端启动的http server的端口,默认8719 sentinel: transport: dashboard: localhost:8080 port: 8719 2,控制台添加/编辑规则后,会push规则内容到应用端的http server 3,h ...
分类:
其他好文 时间:
2020-01-19 11:08:17
阅读次数:
99
背景:自己搭建的Linux环境的redis 哨兵集群,配置文件如下 根据该链接 https://juejin.im/post/5b7d226a6fb9a01a1e01ff64 其中 sentenal的配置文件为: 分别拷贝三份 redis-sentinel.conf 文件到 /usr/local/r ...
分类:
编程语言 时间:
2020-01-16 12:50:59
阅读次数:
330