返回顶部
首页 > 资讯 > 精选 >sentinel如何整合spring cloud限流
  • 705
分享到

sentinel如何整合spring cloud限流

2023-06-29 17:06:44 705人浏览 独家记忆
摘要

这篇文章将为大家详细讲解有关sentinel如何整合spring cloud限流,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。spring cloud基于http进行服务调用,大致过程如下:服务

这篇文章将为大家详细讲解有关sentinel如何整合spring cloud限流,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

spring cloud基于http进行服务调用,大致过程如下:

  • 服务提供端:提供Http接口,并向服务中心注册服务信息

  • 服务消费端:将服务端的http接口作为本地服务,从注册中心读取服务提供端信息,使用feign发起远程调用

相关依赖

           <!-- 服务注册与发现 -->        <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>

示例

为简化处理,直接对url接口进行限流,不做服务调用

sentinel如何整合spring cloud限流

application.yml

spring:  application:    name: hello-sentinel  cloud:    nacos:      discovery:        server-addr: localhost:8848    sentinel:      transport:        dashboard: localhost:8081

限流可使用本地配置、或者sentinel dashboard配置

HelloController

@RestControllerpublic class HelloController {     @SentinelResource(value = "hello", blockHandler = "blockHandle")    @RequestMapping("/hello")    public String hello(){        return "hello";    }    public String blockHandle(BlockException e){        e.printStackTrace();        return "被限流了";}

************

本地限流配置

sentinel如何整合spring cloud限流

CustomFlowRule

public class CustomFlowRule implements InitFunc {     @Override    public void init() throws Exception {        List<FlowRule> flowRules = new ArrayList<>();        FlowRule flowRule = new FlowRule();        flowRule.setResource("hello");        flowRule.setCount(1);        flowRule.setControlBehavior(RuleConstant.CONTROL_BEHAVIOR_DEFAULT);        flowRules.add(flowRule);        FlowRuleManager.loadRules(flowRules);    }}

META-INF/services/com.alibaba.csp.sentinel.init.InitFunc

com.example.demo.rule.CustomFlowRule

jmeter 测试

sentinel如何整合spring cloud限流

sentinel如何整合spring cloud限流

sentinel如何整合spring cloud限流

2022-03-27 22:30:50.534  INFO 1791 --- [           main] o.s.b.w.embedded.Tomcat.TomcatWEBServer  : Tomcat started on port(s): 8080 (http) with context path ''2022-03-27 22:30:50.547  INFO 1791 --- [           main] c.a.c.n.reGIStry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP hello-sentinel 192.168.5.11:8080 register finished2022-03-27 22:30:50.557  INFO 1791 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 2.227 seconds (JVM running for 2.824)2022-03-27 22:31:04.044  INFO 1791 --- [NIO-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'2022-03-27 22:31:04.044  INFO 1791 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'2022-03-27 22:31:04.049  INFO 1791 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 5 msINFO: Sentinel log output type is: fileINFO: Sentinel log charset is: utf-8INFO: Sentinel log base directory is: /Users/huli/logs/csp/INFO: Sentinel log name use pid is: falsecom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowException

************

sentinel dashboard配置限流

启动sentinel dashboard

java -Dserver.port=8081 -Dcsp.sentinel.dashboard.server=localhost:8081 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar 参数说明:-Dserver.port=8081:指定控制台启动端口-Dcsp.sentinel.dashboard.server:指定控制台地址和端口-Dproject.name=sentinel-dashboard:指定控制台项目名称

localhost:8081,控制台配置流控策略

sentinel如何整合spring cloud限流

sentinel如何整合spring cloud限流

说明:若需使用本地降级方法,需在下方的hello配置流控规则

jmeter 测试

sentinel如何整合spring cloud限流

sentinel如何整合spring cloud限流

sentinel如何整合spring cloud限流

2022-03-28 08:50:29.165  INFO 853 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''2022-03-28 08:50:29.198  INFO 853 --- [           main] c.a.c.n.registry.NacosServiceRegistry    : nacos registry, DEFAULT_GROUP hello-sentinel 192.168.5.11:8080 register finished2022-03-28 08:50:29.210  INFO 853 --- [           main] com.example.demo.DemoApplication         : Started DemoApplication in 3.315 seconds (JVM running for 4.03)2022-03-28 08:52:05.792  INFO 853 --- [nio-8080-exec-2] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'2022-03-28 08:52:05.793  INFO 853 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'2022-03-28 08:52:05.802  INFO 853 --- [nio-8080-exec-2] o.s.web.servlet.DispatcherServlet        : Completed initialization in 9 msINFO: Sentinel log output type is: fileINFO: Sentinel log charset is: utf-8INFO: Sentinel log base directory is: /Users/huli/logs/csp/INFO: Sentinel log name use pid is: falsecom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowExceptioncom.alibaba.csp.sentinel.slots.block.flow.FlowException

关于“sentinel如何整合spring cloud限流”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

--结束END--

本文标题: sentinel如何整合spring cloud限流

本文链接: https://lsjlt.com/news/325880.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • sentinel如何整合spring cloud限流
    这篇文章将为大家详细讲解有关sentinel如何整合spring cloud限流,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。spring cloud基于http进行服务调用,大致过程如下:服务...
    99+
    2023-06-29
  • sentinel 整合spring cloud限流的过程解析
    spring cloud基于http进行服务调用,大致过程如下: 服务提供端:提供http接口,并向服务中心注册服务信息服务消费端:将服务端的http接口作为本地服务,从注册中心读取...
    99+
    2024-04-02
  • Spring Cloud Gateway整合sentinel如何实现流控熔断
    这篇文章主要介绍“Spring Cloud Gateway整合sentinel如何实现流控熔断”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Spring Cloud&n...
    99+
    2023-06-29
  • Spring Cloud Gateway整合sentinel 实现流控熔断的问题
    目录一、什么是网关限流:二、gateway 整合 sentinel 实现网关限流:三、sentinel 网关流控规则的介绍:3.1、网关流控规则:3.2、API 分组管理:四、sen...
    99+
    2024-04-02
  • Spring Cloud Alibaba之Sentinel实现熔断限流功能
    微服务中为了防止某个服务出现问题,导致影响整个服务集群无法提供服务的情况,我们在系统访问量和业务量高起来了后非常有必要对服务进行熔断限流处理。 其中熔断即服务发生异常时能够更好的处理...
    99+
    2024-04-02
  • Spring Cloud Alibaba微服务组件Sentinel实现熔断限流
    目录Sentinel简介Sentinel具有如下特性:安装Sentinel控制台创建sentinel-service模块限流功能创建RateLimitController类根据URL...
    99+
    2024-04-02
  • Spring Cloud Gateway集成Sentinel流控详情
    目录概述快速开始添加Sentinel配置文件编写配置文件测试概述 Sentinel 支持对 Spring Cloud Gateway、Zuul 等主流的 API Gateway 进行...
    99+
    2024-04-02
  • Spring Cloud Alibaba之Sentinel实现熔断限流功能的方法
    这篇文章主要介绍Spring Cloud Alibaba之Sentinel实现熔断限流功能的方法,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!sentinel简介这个在阿里云有企业级的商用版本 应用高可用服务 AHA...
    99+
    2023-06-14
  • Sentinel如何整合SpringCloud
    小编给大家分享一下Sentinel如何整合SpringCloud,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!Spring Cloud Alibaba Senti...
    99+
    2023-06-25
  • spring boot如何整合redis主从sentinel方式
    小编给大家分享一下spring boot如何整合redis主从sentinel方式,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!springboot整合redis主从sentinel一主二从三sentinel配置...
    99+
    2023-06-29
  • Spring Boot整合流控组件Sentinel的场景分析
    目录一、百度百科1、Sentinel 特性2、Sentinel 的开源生态二、Sentinel 的历史三、Sentinel 基本概念1、资源2、规则四、sentinel的优势五、Se...
    99+
    2024-04-02
  • spring cloud zuul 与 sentinel的结合使用操作
    spring cloud zuul 与 sentinel结合 本来大型服务处理请求超时,限流,降级熔断工作用hystrix,但是这个这个项目不再更新了,虽说它现在提供的版本不会影响到...
    99+
    2024-04-02
  • Sentinel整合Feign流程详细讲解
    修改84模块 84消费者调用提供者9003 Feign组件一般是消费侧 重点依赖 <!--SpringCloud openfeign --> <d...
    99+
    2024-04-02
  • Spring cloud 限流的多种方式
    目录一、实战基于 Spring cloud Gateway 的限流 二、基于阿里开源限流神器:Sentinel 在频繁的网络请求时,服务有时候也会受到很大的压力,尤其是那种网络攻击,...
    99+
    2024-04-02
  • 如何使用springboot整合RateLimiter限流
    这篇文章主要介绍了如何使用springboot整合RateLimiter限流的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇如何使用springboot整合RateLimiter限流文章都会有所收获,下面我们一起...
    99+
    2023-07-02
  • spring cloud架构整合-springcloud简介
    Spring Cloud是一系列框架的有序集合。利用Spring Boot的开发模式简化了分布式系统基础设施的开发,都可以用Spring Boot的开发风格做到一键启动和部署。Spring Cloud...
    99+
    2023-06-05
  • Spring Cloud整合Spring Boot Admin方法是什么
    这篇文章主要介绍“Spring Cloud整合Spring Boot Admin方法是什么”,在日常操作中,相信很多人在Spring Cloud整合Spring Boot Admin方法是什么问题上存在疑惑,小编查阅了各...
    99+
    2023-06-22
  • 如何在项目中使用Spring Cloud Alibaba Sentinel组件
    这篇文章主要介绍“如何在项目中使用Spring Cloud Alibaba Sentinel组件”,在日常操作中,相信很多人在如何在项目中使用Spring Cloud Alibaba Sentinel组件问题上存在疑惑,小编查阅了各式资料,...
    99+
    2023-06-20
  • sentinel整合ribbon与fallback流程分步讲解
    前期准备: 启动nacos和sentinel 提供者9003/9004(以9003为样本) 新建cloudalibaba-provider-payment9003/9004 pom文...
    99+
    2024-04-02
  • SpringCloud中如何使用Sentinel实现限流
    这篇文章主要介绍了SpringCloud中如何使用Sentinel实现限流的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringCloud中如何使用Sentinel实现限流文章都会有所收获,下面我们一起来看...
    99+
    2023-06-26
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作