分布式系统的流量防卫兵Sentinel-初级入门篇

目录

一、什么是Sentinel

二、核心概念

 三、Sentinel 分为两个部分

四、pom.xml引入

 五、Sentinel控制台搭建

六、微服务接入Sentinel配置

 七、限流配置


一、什么是Sentinel

阿里巴巴开源的分布式系统流控工具
以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性
丰富的应用场景:消息削峰填谷、集群流量控制、实时熔断下游不可用应用等
完备的实时监控:Sentinel 同时提供实时的监控功能
提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合
官网:https://github.com/alibaba/Sentinel/wiki/%E4%BB%8B%E7%BB%8D
Sentinel版本:2.2.1

二、核心概念

资源:是 Sentinel 中的核心概念之一,可以是java程序中任何内容,可以是服务或者方法甚至代码,总结起来就是我们要保护的东西
规则:定义怎样的方式保护资源,主要包括流控规则、熔断降级规则等

 

 三、Sentinel 分为两个部分

核心库(Java 客户端)不依赖任何框架/库,能够运行于所有 Java 运行时环境,同时对 Dubbo、Spring Cloud 等框架也有较好的支持。
控制台(Dashboard)基于 Spring Boot 开发,打包后可以直接运行,不需要额外的 Tomcat 等应用容器。

四、pom.xml引入

 <dependency>
            <groupId>com.alibaba.cloud</groupId>
            <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

 五、Sentinel控制台搭建

文档:https://github.com/alibaba/Sentinel/wiki/控制台

控制台包含如下功能:
查看机器列表以及健康情况:收集 Sentinel 客户端发送的心跳包,用于判断机器是否在线。
监控 (单机和集群聚合)通过 Sentinel 客户端暴露的监控 API,定期拉取并且聚合应用监控信息,最终可以实现秒级的实时监控。
规则管理和推送:统一管理推送规则。
鉴权:生产环境中鉴权非常重要。这里每个开发者需要根据自己的实际情况进行定制。

注意:Sentinel 控制台目前仅支持单机部署 微服务和sentinel需要部署在同一台机器上才可以访问到监控!!! 用阿里云部署的话,如果微服务在本机windows中,即使配置了clientIp也连接不通。。我还不知道原因,尝试了好些方法,最后。。。部署在windows和微服务一起

学习使用,建议Sentinel直接部署在windows上。研发环境使用,建议同微服务一起部署在同一台服务上。

linux环境部署如下:(windows类似,启动语句也适用)

sentinel-dashboard-1.8.0.jar 

 

cd /usr/local/software/sentinel

 chmod 777 sentinel-dashboard-1.8.0.jar

//启动 Sentinel 控制台需要 JDK 版本为 1.8 及以上版本,
//-Dserver.port=8088 用于指定 Sentinel 控制台端口为 8088 
//默认用户名和密码都是 sentinel

java -Dserver.port=8088 -Dcsp.sentinel.dashboard.server=localhost:8088 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard-1.8.0.jar

 

六、微服务接入Sentinel配置

spring:
  cloud:
    sentinel:
      transport:
        dashboard: 127.0.0.1:8088 
        port: 9999 

#dashboard:127.0.0.1 sentinel部署的IP地址 8088 sentinel部署所在的控制台端口
#port: 9999 本地启的端口,可以不改,随机选个不能被占用的,与dashboard进行数据交互,会在
应用对应的机器上启动一个 Http Server,该 Server 会与 Sentinel 控制台做交互, 若被占用,则开始+1
一次扫描

微服务注册上去后,由于Sentinel是懒加载模式,所以需要访问微服务后才会在控制台出现

 

 七、限流配置

快速的刷新请求地址后,微服务控制台将出现以下错误: 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值