栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

dubbo之使用sentinel限流

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

dubbo之使用sentinel限流

写在前面

通过本文一起来看下如何使用sentinel来进行限流。

在这篇文章 基础上进行改造。源码 。

1:sentinel控制台

在这里 下载控制台jar包(这是一个springboot项目)。 下载完毕后通过如下命令启动:java -jar sentinel-dashboard-1.7.0.jar --server.port=8010 --auth.username=sentinel --auth.password=sentinel,启动成功后通过http://192.168.10.119:8010/#/login访问,如下:

录入账号sentinel/sentinel,登录如下页面即为成功:

因为此时还没有任何的dubbo接口注册,所以是空的。

2:rpc-service-provider-04 2.1:引入依赖

引入sentinel相关的依赖:


    com.alibaba.csp
    sentinel-core
    1.7.0



    com.alibaba.csp
    sentinel-transport-simple-http
    1.7.0



    com.alibaba.csp
    sentinel-apache-dubbo-adapter
    1.7.0

2.2:增加配置

在resources目录下增加sentinel.properties,如下:

csp.sentinel.dashboard.server=192.168.10.119:8010
3:rpc-service-consumer-04 3.1:引入依赖

引入sentinel相关的依赖:


    com.alibaba.csp
    sentinel-core
    1.7.0



    com.alibaba.csp
    sentinel-transport-simple-http
    1.7.0



    com.alibaba.csp
    sentinel-apache-dubbo-adapter
    1.7.0


    org.springframework.boot
    spring-boot-starter-web

3.2:增加配置

在resources目录下增加sentinel.properties,如下:

csp.sentinel.dashboard.server=192.168.10.119:8010
3.3:UserController
@RestController
@RequestMapping("/user")
public class UserController {

    @Reference(version = "${dubbo.consumer.UserRpcService.version}")
    private UserRpcService userRpcService;

    @GetMapping("/get")
    public UserDTO get(@RequestParam("id") Integer id) {
        return userRpcService.get(id);
    }

}
3.4:简单测试

启动后,访问http://192.168.10.119:8024/user/get?id=55:

此时可以随意访问,接下来通过sentinel控制台配置该接口每秒只可以访问一次,点击消费者的簇点链路->流控,如下图:

然后设置如下:

然后再访问http://192.168.10.119:8024/user/get?id=55,重复点击看到如下被限制访问页面则说明成功了:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/531096.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号