Feign 整合 Sentinel

依赖

        <!--Feign-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-openfeign</artifactId>
</dependency>
<!--sentinel-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
</dependency>

application.properties

# Feign 整合 Sentinel
feign.sentinel.enabled=true

UserCenterFeignClient

@FeignClient(
name = "user-center",
// fallback = UserCenterFeignClientFallback.class
fallbackFactory = UserCenterFeignClientFallbackFactory.class
)
public interface UserCenterFeignClient {
@GetMapping("/users/{id}")
UserDTO queryById(@PathVariable("id") Integer id);
}

UserCenterFeignClientFallback

# 注意一定要加@Component
@Component
public class UserCenterFeignClientFallback implements UserCenterFeignClient {
@Override
public UserDTO queryById(Integer id) {
UserDTO userDTO = new UserDTO();
userDTO.setWxNickname("默认用户");
return userDTO;
}
}

UserCenterFeignClientFallbackFactory

@Component
@Slf4j
public class UserCenterFeignClientFallbackFactory implements FallbackFactory<UserCenterFeignClient> {
@Override
public UserCenterFeignClient create(Throwable throwable) {
return new UserCenterFeignClient() {
@Override
public UserDTO queryById(Integer id) {
log.warn("远程调用被限流/降级了", throwable);
UserDTO userDTO = new UserDTO();
userDTO.setWxNickname("默认用户");
return userDTO;
}
};
}
}

FallbackFactory 比 Fallback 更强大,可以打印更多异常信息。

源码:



规则持久化

最新文章

  1. keras安装
  2. 常见排序算法总结(含C/C++代码)
  3. Sublime3安装过程及常用插件安装及常用快捷键
  4. Spark官方文档——本地编写并运行scala程序
  5. C#图片切割、图片压缩、缩略图生成
  6. 安装rlwrap错误的问题解决方法
  7. C#实现Dll(OCX)控件自动注册的两种方法
  8. 使用 sp_executesql
  9. SharpDeveloeper开发ASP.NET MVC汗流浃背
  10. [cocos2dx动作]CCLabel类数字变化动作
  11. Android源码学习
  12. RB1001: IE6 IE7 IE8(Q) 负边距 (margin) 导致元素溢出 hasLayout 容器时显示异常
  13. Why Functional Programming Matters
  14. 使用jieba库与wordcloud库第三方库进行词频统计
  15. graph_base_pic_segmentation里面的细节和代码
  16. postman 测试套件collection
  17. redis 4.x 安装哨兵模式 sentinel
  18. BZOJ3526[Poi2014]Card——线段树合并
  19. imperva代理拦截
  20. NPOI保存到服务器和导出到客户端

热门文章

  1. 8个Spring事务失效的场景,你碰到过几种?
  2. selenium 之可视模式、静默模式、忽略证书不可用的设置
  3. LFU 的设计与实现
  4. 【深入浅出 Yarn 架构与实现】4-4 RM 管理 Application
  5. Wireshark嗅探软件
  6. Unreal学习笔记2-绘制简单三角形
  7. C#如何提高代码质量(一)
  8. Dijkstra算法详解(朴素算法+堆优化)
  9. 二、typora软件的安装与markdown语法
  10. CentOS即将停止维护,拥抱阿里“龙蜥“(Anolis OS),VMware安装Anolis OS与介绍