Spring cloud Alibaba-Sentinel

19 篇文章 0 订阅

1、熔断降级限流

1)、什么是熔断

        A服务调用B服务。例如 由于用网络问题,或者b服务卡机。导致调用时间超长。如果只是第二个调用还好,feign 远程调用有默认超时时间。如是第5个远程调用。那就是3*15=45秒的等待后。才会释放这个处理请求的资源。一旦,大量请求进来。就会直接导致资源耗尽。系统宕机。

熔断 就是调用有问题的B 直接返回降级数据(提示服务正在强求中。。请稍后再试)。这样就不会级联影响A服务。(就是让一个请求的调用链能快速相应。不会出现超长相应)

2)、什么是降级

        整个网站处理流量高峰期。服务器压力剧增。如现在是秒杀活动进行中。高流量进入服务。对某些服务和页面进行有策略的降级【停止服务,所有的调用直接返回降级数据(当前服务不可用。。)】,例如注册服务。就可以停止掉。以缓解服务器资源的压力。保证核心业务的正常运行。同时也保持了。大部分客户的正确相应。

3)、什么是限流

对打入服务的请求流量进行控制,是服务能够承担不超过自己能力的流量压力

熔断和降级的异同

        相同点:

        1)、为了保证集群大部分服务的可用性和可靠性。防止崩溃,牺牲自己

        2)、用户最近都是体验到某个功能不可用

       (微博热搜)。大量服务请求进来。提示服务器忙。。。但是你还是能登录微博。查看某些信息

不同点:

        1)、熔断是被调用方故障,触发的系统主动规则。(就是B挂了,告诉系统。我不能被调用了。系统就会通知所有调用B服务的直接返回对应的相应数据)

        2)、降级是基于全局考虑,停止一些正常服务,是否资源

 具体使用参考官网:如何使用 · alibaba/Sentinel Wiki · GitHub

 整合Sentinel

1)、下载

 

根据下载的sentinel 去下载对应的可视化页面jar包 

 

 

可使用迅雷下载

 

 启动

 访问

用户和密码都是sentinel

 

 

项目配置

 

 

 

 访问任何一个服务请求后

 没秒只能通过一个这个请求

 超过规则设置,不会调用请求

二、

1)、添加时事监控

 

 pom.xml添加

<dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-actuator</artifactId>
        </dependency>

 

management.endpoints.web.exposure.include=*

 

 2)、自定已返回的的数据

写一个config配置类

@Configuration
public class SeckillSentinelConfig {

    public SeckillSentinelConfig(){
        WebCallbackManager.setUrlBlockHandler(new UrlBlockHandler() {
            @Override
            public void blocked(HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse, BlockException e) throws IOException {
                R error = R.error(BizCodeEnume.TO_MANY_REQUEST.getCode(), BizCodeEnume.TO_MANY_REQUEST.getMsg());
                httpServletResponse.setCharacterEncoding("UTF-8");
                httpServletResponse.setContentType("application/json");
                httpServletResponse.getWriter().write(JSON.toJSONString(error));
            }
        });
    }
}

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

追逐路上的小人物

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值