feign 整合sentinel_使用Nacos作注册中心,整合SpringCloud Alibaba Sentinel的限流熔断的框架搭建...

8184b3fb5bd4b80f04697905674eeeb9.png

今天,就不讲理论了

理论的学习我们社群里天天都有文字直播

感兴趣的同学,拉到底部。

扫码进群

---开始---

首先准备三个项目

我这里是

调用关系:microservice-robot --》 microservice-myuser --》 microservice-order

# SpringCloud Alibaba 整合三部曲# 一般三步:加依赖、加注解、加配置

pom.xml

<?xml version="1.0" encoding="UTF-8"?>xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">4.0.0com.itmuch.cloudspring-cloud-learning-rancher0.0.1-SNAPSHOTpommicroservice-robotmicroservice-ordermicroservice-myuserGreenwich.RELEASE2.1.0.RELEASE2.7.61.0.21.0.11.0.1UTF-8UTF-81.8org.springframework.bootspring-boot-starter-parent2.1.5.RELEASEcom.alibaba.cloudspring-cloud-starter-alibaba-sentinelcom.alibaba.cloudspring-cloud-starter-alibaba-nacos-configcom.alibaba.cloudspring-cloud-starter-alibaba-nacos-discoveryorg.springframework.cloudspring-cloud-starter-openfeignorg.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-testtestorg.springframework.bootspring-boot-starter-actuatorio.micrometermicrometer-coreio.micrometermicrometer-registry-prometheusorg.hibernatehibernate-validatorcom.fasterxml.jackson.corejackson-databindorg.springframework.cloudspring-cloud-dependencies${spring-cloud.version}pomimportcom.alibaba.cloudspring-cloud-alibaba-dependencies${spring-cloud-alibaba.version}pomimportorg.springframework.bootspring-boot-maven-pluginorg.springframeworkspringloaded1.2.5.RELEASEorg.mybatis.generatormybatis-generator-maven-plugin1.3.2${basedir}/src/main/resources/generator/generatorConfig.xmltruetruemysqlmysql-connector-java${mysql.version}tk.mybatismapper-generator1.0.0

application.yml

spring:application:name: microservice-robotcloud:sentinel:transport:# port: 8719dashboard: 192.168.213.1:8080nacos:discovery:server-addr: 192.168.213.1:8848config:        server-addr: 192.168.213.1:8848        feign:sentinel:    enabled: true

这里简单只需要实现A->B->C的一种微服务调用关系即可

通过feign 进行调用

@FeignClient(name = "microservice-order", fallback = FallbackRemoteClient.class) public interface RemoteClient {     CallResult getGood(); }

@Slf4j@Componentpublic class FallbackRemoteClient implements RemoteClient{@Overridepublic CallResult getGood(){          log.info("调用  微服务失败");return CallResult.failure("调用 微服务失败"); } }

添加一个Controller

@RefreshScope@RestControllerpublic class MyController {@RequestMapping(value="/callmyuser", method={RequestMethod.GET})public CallResult query3() throws Exception { System.out.println(" ...... call 。。。。" );return CallResult.success(remoteClient.getGood()); } }

启动nacos

# 启动nacosstartup.cmd

启动sentinel

# 启动sentineljava -Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -jar sentinel-dashboard.jar

f8f8e8a2382485fa6b4523ba2273f543.png

7e20f99252ad97211d27f4b8a94dee99.png

8e944e0b59b00dc96c3ce35d8ca97a73.png

停止microservice-order微服务的时候,则看到了这个界面

be831a0c62f3487ab1e90eeea1dfa92d.png

需要获取源代码的可以找腾哥

有任何问题欢迎进群讨论:腾哥的微信:419644560

00c66f28a0eead7cf2c950b9cf4d91d0.png

【架构师智库】

电报群每日动态推送架构领域的技术、方法、工具和理念资讯!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值