【Sentinel】 基本使用
【Sentinel】 基本使用Metadatatitle: 【Sentinel】 基本使用
date: 2023-01-09 21:46
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel/使用文档
categories:
- Sentinel
keywords:
- Sentinel
description: 【Sentinel】 基本使用
【Sentinel】 基本使用Sentinel 可以简单的分为 Sentinel 核心库和 Dashboard。核心库不依赖 Dashboard,但是结合 Dashboard 可以取得最好的效果。
这篇文章主要介绍 Sentinel 核心库的使用。如果希望有一个最快最直接的了解,可以参考 新手指南 来获取一个最直观的感受。
我们说的资源,可以是任何东西,服务,服务里的方法,甚至是一段代码。使用 Sentinel 来进行资源保护,主要分为几个步骤:
定义资源
定义规则
检验规则是否生 ...
Sentinel
SentinelMetadatatitle: Sentinel
date: 2023-01-09 21:44
tags:
- 行动阶段/未完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/流量控制
- 细化主题/熔断降级
categories:
- Sentinel
keywords:
- 流量控制
- 熔断降级
description: Sentinel 是由阿里巴巴中间件团队开发的开源项目,是一种面向分布式微服务架构的轻量级高可用流量控制组件。Sentinel 主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度帮助用户保护服务的稳定性。
Sentinel 基础undefined
Sentinel 使用文档undefined
【Sentinel】 基础
【Sentinel】 基础Metadatatitle: 【Sentinel】 基础
date: 2023-01-09 21:42
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel
categories:
- Ribbon
keywords:
- Ribbon
description: 【Sentinel】 基础
【Sentinel】 简介undefined
【Sentinel】 快速开始undefined
【Sentnel】 同类组件功能对比undefined
【Sentinel】 基本原理undefined
【Sentinel】 快速开始
【Sentinel】 快速开始Metadatatitle: 【Sentinel】 快速开始
date: 2023-01-09 21:30
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel/基础
categories:
- Sentinel
keywords:
- Sentinel
description: 【Sentinel】 快速开始
【Sentinel】 快速开始Sentinel 的使用可以分为两个部分:
核心库(Java 客户端):不依赖任何框架/库,能够运行于 Java 8 及以上的版本的运行时环境,同时对 Dubbo / Spring Cloud 等框架也有较好的支持(见 主流框架适配)。
控制台(Dashboard):Dashboard 主要负责管理推送规则、监控、管理机器信息等。我们将会提供 本地运行 demo 和 公网 demo 来帮助新手快速入门。这两种方式都只需要您执行2到5个步骤。
本地Demo ...
【Sentnel】 同类组件功能对比
【Sentnel】 同类组件功能对比Metadatatitle: 【Sentnel】 同类组件功能对比
date: 2023-01-09 21:28
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel/基础
categories:
- Sentinel
keywords:
- Sentinel
description: 【Sentnel】 同类组件功能对比
【Sentnel】 同类组件功能对比
Sentinel
Hystrix
resilience4j
隔离策略
信号量隔离(并发控制)
线程池隔离/信号量 隔离
信号量隔离
熔断降级策略
基于慢调用比例、异常比例、异常数
基于异常比例
基于异常比例、响应时间
实时统计实现
滑动窗☐(LeapArray)
滑动窗☐(基于 RxJava)
Ring Bit Buffer
动态规则配置
支持近十种动态数据源
支持多种数据源
有限支持
扩展性
多个扩展点 ...
【Sentinel】 基本原理
【Sentinel】 基本原理Metadatatitle: 【Sentinel】 基本原理
date: 2023-01-09 21:17
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel/基础
categories:
- Sentinel
keywords:
- Sentinel
description: 【Sentinel】 基本原理
【Sentinel】 基本原理在 Sentinel 里面,所有的资源都对应一个资源名称以及一个 Entry。Entry 可以通过对主流框架的适配自动创建,也可以通过注解的方式或调用 API 显式创建;每一个 Entry 创建的时候,同时也会创建一系列功能插槽(slot chain)。这些插槽有不同的职责,例如:
NodeSelectorSlot 负责收集资源的路径,并将这些资源的调用路径,以树状结构存储起来,用于根据调用路径来限流降级;
ClusterBuilderSlot 则用于存储 ...
【Sentinel】 简介
【Sentinel】 简介Metadatatitle: 【Sentinel】 简介
date: 2023-01-09 21:07
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Sentinel/基础
categories:
- Sentinel
keywords:
- Sentinel
description: Sentinel 是由阿里巴巴中间件团队开发的开源项目,是一种面向分布式微服务架构的轻量级高可用流量控制组件。Sentinel 主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度帮助用户保护服务的稳定性。
【Sentinel】 简介Sentinel 是由阿里巴巴中间件团队开发的开源项目,是一种面向分布式微服务架构的轻量级高可用流量控制组件。
Sentinel 主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度帮助用户保护服务的稳定性。
Sentinel 特性
丰富的应用场景:Sentinel 承接了 ...
【Ribbon】 快速开始
【Ribbon】 快速开始Metadatatitle: 【Ribbon】 快速开始
date: 2023-01-09 19:51
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Ribbon
categories:
- Ribbon
keywords:
- Ribbon
description: 【Ribbon】 快速开始
【Ribbon】 Eureka 快速开始undefined
【Ribbon】 Nacos 快速开始undefined
【Ribbon】 理论
【Ribbon】 理论Metadatatitle: 【Ribbon】 理论
date: 2023-01-09 19:50
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Ribbon
categories:
- Ribbon
keywords:
- Ribbon
description: 【Ribbon】 理论
【Ribbon】 核心工作原理undefined
【Ribbon】 实现原理
【Ribbon】 实现原理Metadatatitle: 【Ribbon】 实现原理
date: 2023-01-09 17:28
tags:
- 行动阶段/完成
- 主题场景/组件
- 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
- 细化主题/Module/Ribbon/基础
categories:
- Ribbon
keywords:
- Ribbon
description: 【Ribbon】 实现原理
【Ribbon】 实现原理
我们使用RestTemplate对象只需要访问一个带有对象名称的路径,也就是http://userservice/user/XX,就可以访问到相对应的接口,这其中离不开LoadBalancerInterceptor的帮助,它会去RestTemplate的请求进行拦截,然后从Eureka中获取服务id与端口号,随后利用负载均衡算法得到真实的服务地址信息,替换服务id。
在LoadBalancerInterceptor这个类中,会有一个intercept方法,其拦截了用户的HttpRe ...