当前位置: 首页 > news >正文

网站开发和后台维护关键词排名软件官网

网站开发和后台维护,关键词排名软件官网,wordpress主键外键,上海专业微信网站建设前言 Feign组件默认使用Ribbon的重试机制并增加了根据状态码判断重试机制&#xff0c;默认情况下是不启用的。Feign使用的是Spring Retry组件&#xff0c;需要引入依赖才能启用。 一、POM引入Spring Retry <dependency><groupId>org.springframework.retry</gro…

前言

Feign组件默认使用Ribbon的重试机制并增加了根据状态码判断重试机制,默认情况下是不启用的。Feign使用的是Spring Retry组件,需要引入依赖才能启用。

一、POM引入Spring Retry

<dependency><groupId>org.springframework.retry</groupId><artifactId>spring-retry</artifactId></dependency>

 

二、配置文件

eureka-client:ribbon:MaxAutoRetries: 1MaxAutoRetriesNextServer: 1retryableStatusCodes: 500,404 OkToRetryOnAllOperations: true NFLoadBalancerRuleClassName: com.netflix.loadbalancer.AvailabilityFilteringRule #负载均衡规则

 

eureka-client是自己的serverId,MaxAutoRetries同一台服务器上的最大重试次数(不包括第一次尝试),MaxAutoRetriesNextServer要重试的下一个服务器的最大数量(不包括第一个服务器),retryableStatusCodes可以根据接口返回的状态码判断是否重试其他服务,OkToRetryOnAllOperations只对所有的超时请求重试

注意: Ribbon的重试机制只有对GET请求或者设置了OkToRetryOnAllOperations生效 详情请查看源码:

public class RibbonLoadBalancedRetryPolicy implements LoadBalancedRetryPolicy {...public Boolean canRetry(LoadBalancedRetryContext context) {HttpMethod method = context.getRequest().getMethod();return HttpMethod.GET == method || lbContext.isOkToRetryOnAllOperations();}...
}

 

Feign对返回状态码做了重试判断RetryableFeignLoadBalancer

public class RetryableFeignLoadBalancer extends FeignLoadBalancerimplements ServiceInstanceChooser {...[@Override](https://my.oschina.net/u/1162528)public RibbonResponse execute(final RibbonRequest request,IClientConfig configOverride) throws IOException {...if (retryPolicy != null&& retryPolicy.retryableStatusCode(response.status())) {byte[] byteArray = response.body() == null ? new byte[] {}: StreamUtils.copyToByteArray(response.body().asInputStream());response.close();throw new RibbonResponseStatusCodeException(RetryableFeignLoadBalancer.this.clientName, response,byteArray, request.getUri());}...}...
}

 

重试机制用的是Spring Retry组件当抛出异常时进行重试!

GET请求指的是feign client 请求其他client时声明的那个interface中mapping注解类型,RequestMapping不设置method默认为GET请求

@FeignClient("stores")
public interface StoreClient {@RequestMapping(method = RequestMethod.GET, value = "/stores")List<Store> getStores();@RequestMapping(method = RequestMethod.POST, value = "/stores/{storeId}", consumes = "application/json")Store update(@PathVariable("storeId") long storeId, Store store);
}

 

写在最后

转载于:https://www.cnblogs.com/Java-no-1/p/11085408.html

http://www.lbrq.cn/news/2350369.html

相关文章:

  • 黄岛网站制作seo关键词优化公司
  • logo设计免费平台网站优化排名方案
  • 北京十大室内设计工作室如何seo推广
  • 做网站销售经常遇到的问题seo搜索引擎优化期末及答案
  • 在哪里个网站找专业做ps的人舟山百度seo
  • 网站的底部导航怎么做个人网页制作完整教程
  • 怎么看一个网站什么程序做的个人网页制作完整教程
  • 做网站需要准备什么搜索引擎优化seo专员招聘
  • 想采集某类型网站怎么做谷歌浏览器网页版
  • 动易门户网站价格手机管家一键优化
  • 网站网页和网址的关系百度关键词下拉有什么软件
  • dw建立网站之后怎么做东莞seo网站排名优化
  • 网站开发技术语言的选择系统优化是什么意思
  • 做网站用什么今天的新闻
  • 在百度建免费网站吗网络营销师证书含金量
  • 网站怎样做优化百度快照投诉中心官网
  • 网站html地图导航代码2021最近最火的关键词
  • 用mvc做网站的框架今日小说百度搜索风云榜
  • 商标注册证在哪里可以查到志鸿优化网下载
  • 加强局网站建设竞价推广工具
  • 怎么做网站写书优化seo哪家好
  • 如何选择商城网站建设成都百度业务员电话
  • 服务型政府网站建设html制作网页代码
  • 怎么申请自己的网站网址如何下载视频
  • 怎么免费制作网站平台某网站seo诊断分析和优化方案
  • wordpress速度很慢合肥百度快速排名优化
  • 送给做网站的锦旗语天猫店铺申请条件及费用
  • 兰州做网站一咨询兰州做网站公司百度网盟
  • 网站建设学习步骤seo咨询顾问
  • 制作网站怎么做的南京百度网站快速优化
  • C# --- 单例类错误初始化 + 没有释放资源导致线程泄漏
  • 大语言模型(LLM)训练的教师强制(Teacher Forcing)方法
  • JobSet:Kubernetes 分布式任务编排的统一解决方案
  • ESP32S3+VSCode+PlatformIO+Arduino+Freertos开发入门指南:基于Arduino框架的应用开发全流程
  • 指数加权的公式推导
  • HTML应用指南:利用GET请求获取河南省胖东来超市门店位置信息