Sentinel简介并且下载运行监控服务

Sentinel简介

Sentinel: 分布式系统的流量防卫兵
官网地址:下载地址中文文档地址
随着微服务的流行,服务和服务之间的稳定性变得越来越重要。Sentinel 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

Sentinel 具有以下特征:
丰富的应用场景: Sentinel 承接了阿里巴巴近 10 年的双十一大促流量的核心场景,例如秒杀(即突发流量控制在系统容量可以承受的范围)、消息削峰填谷、集群流量控制、实时熔断下游不可用应用等。
完备的实时监控: Sentinel 同时提供实时的监控功能。您可以在控制台中看到接入应用的单台机器秒级数据,甚至 500 台以下规模的集群的汇总运行情况。
广泛的开源生态: Sentinel 提供开箱即用的与其它开源框架/库的整合模块,例如与 Spring Cloud、Dubbo、gRPC 的整合。您只需要引入相应的依赖并进行简单的配置即可快速地接入 Sentinel。
完善的 SPI 扩展点: Sentinel 提供简单易用、完善的 SPI 扩展接口。您可以通过实现扩展接口来快速地定制逻辑。例如定制规则管理、适配动态数据源等。

Sentinel 分为两个部分:
核心库(Java 客户端)不依赖任何框架/库,能够运行于所有 Java 运行时环境,同时对 Dubbo / Spring Cloud 等框架也有较好的支持。
控制台(Dashboard)基于 Spring Boot 开发,打包后可以直接运行,不需要额外的 Tomcat 等应用容器。
主要特性:
在这里插入图片描述
良好的的开源生态:
在这里插入图片描述

Sentinel 下载安装运行

官网地址:下载地址
运行环境:jdk8+就OK了。并且是一个springboot工程,直接运行就好了

java -j sentinel-dashboard-1.8.0.jar

出现下面图片就证明启动成功了,sentinel默认账户密码都是:sentinel
在这里插入图片描述
在这里插入图片描述

Java程序使用sentinel

前置条件:nacos作为注册中心需要先启动好
maven
nacos作为注册中心,sentinel作为服务监控

 <!--nacos-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
    </dependency>
    <!--sentinel-->
    <dependency>
        <groupId>com.alibaba.cloud</groupId>
        <artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
    </dependency>
    <!--持久化-->
    <dependency>
        <groupId>com.alibaba.csp</groupId>
        <artifactId>sentinel-datasource-nacos</artifactId>
    </dependency>

yml
配置好nacos和sentinel地址

server:
  port: 8041
spring:
  application:
    name: sentinel-server
  cloud:
    nacos:
      discovery:
        server-addr: localhost:8848 #告诉微服务,nacos的访问地址
    sentinel:
      transport:
        dashboard: localhost:8080 #sentinel监控页面地址URL
        port: 8719 #默认8719端口,假如被占用会自动从8719开始依次+1扫描,直至找到未被古用的端口

management:
  endpoints:
    web:
      exposure:
        include: '*' 

测试请求类

/**
 1. @author 小鱼
 2. @version 1.0
 3. @date 2021/8/6 4:27 下午
 */
@RestController
@Slf4j
public class SentinelController {
    /**
     *测试
     * @return
     */
    @GetMapping("getA")
    public String getA(){
        return "it is A";
    }
    @GetMapping("getB")
    public String getB(){
        return "it is B";
    }
}

验证
1.启动微服务
2.查看nacos和sentinel是否注册和监控成功
在这里插入图片描述
3.因为sentinel是懒加载机制需要发送微服务请求:http://localhost:8041/getB,才可以让sentinel监控到微服务
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值