城市建设/seo优化内容

城市建设,seo优化内容,公司做两个网站有影响吗,气泡做网站上方代码一、问题产生 自定义重试次数,实现如下 ConditionalOnProperty(prefix "feign.client", name "enable", havingValue "true") Configuration public class FeignConfig {Beanpublic FeignInterceptor feignInterceptor() {retur…

一、问题产生

自定义重试次数,实现如下

@ConditionalOnProperty(prefix = "feign.client", name = "enable", havingValue = "true")
@Configuration
public class FeignConfig {@Beanpublic FeignInterceptor feignInterceptor() {return new FeignInterceptor();}@Beanpublic ErrorDecoder errorDecoder() {return new FeignErrorDecoder();}@Beanpublic Retryer feignRetryer() {return new Retryer.Default(500, TimeUnit.SECONDS.toMillis(1L), 3);}
}

Application.yml配置如下:

feign:client:enable: trueconfig:default:connectTimeout: 30000readTimeout: 30000#retryer: feign.Retryer.Defaultfile-service: # 为个别服务设置不同的超时时间connectTimeout: 6 # 为了方便测试超时重试readTimeout: 6  # 为了方便测试超时重试  

 上述调用完后,发现不对,配置了3次,实际重试了6次,注册中心有2个被调服务实例


二、‌问题根源

您的重试次数异常(配置3次实际触发6次)是由于 ‌Feign 与 Ribbon 的重试策略叠加‌,且 ‌Eureka 注册的多个服务实例触发 Ribbon 的实例切换重试‌ 导致的。具体原因如下:

  1. Ribbon 默认重试机制
    Ribbon 的 MaxAutoRetriesNextServer 默认值为 1,当服务注册多个实例时,Ribbon 会在首次请求失败后 ‌切换实例重试 1 次‌‌。此时总重试次数计算公式为:

    总请求次数 = (1 + MaxAutoRetries) * (1 + MaxAutoRetriesNextServer) * Feign重试次数

    例如:若 MaxAutoRetries=0(默认)、MaxAutoRetriesNextServer=1(默认)、Feign maxAttempts=3,则总次数为:

    (1+0) * (1+1) * 3 = 6次

  2. Eureka 多实例触发切换
    当两个服务实例注册到 Eureka 时,Ribbon 的 MaxAutoRetriesNextServer=1 会尝试 ‌切换实例重试‌,导致每个实例被调用 Feign重试次数 × (1 + MaxAutoRetriesNextServer) 次‌。


三、‌解决方案

关闭 Ribbon 实例切换重试

在 application.yml 中显式禁用 Ribbon 的实例切换重试:

ribbon:MaxAutoRetriesNextServer: 0   # 关闭切换实例重试‌MaxAutoRetries: 0             # 关闭同一实例重试(默认已为0,可省略)OkToRetryOnAllOperations: false  # 禁止非GET请求重试‌

修改完成后,再次执行程序,控制台输出了超时

 可以看到文件服务重试了3次,如下图所示

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/898024.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Dify使用部署与应用实践

最近在研究AI Agent,发现大家都在用Dify,但Dify部署起来总是面临各种问题,而且我在部署和应用测试过程中也都遇到了,因此记录如下,供大家参考。Dify总体来说比较灵活,扩展性比较强,适合基于它做…

剖析sentinel的限流和熔断

sentinel的限流和熔断 前言源码分析滑动窗口源码限流源码熔断源码 完结撒花,sentinel源码还是挺简单的,如有需要收藏的看官,顺便也用发财的小手点点赞哈,如有错漏,也欢迎各位在评论区评论! 前言 平时发起一…

硬盘分区误删后的数据救赎

一、硬盘分区误删的概述 硬盘分区误删,是许多电脑用户在使用过程中可能遭遇的棘手问题。分区,作为硬盘上存储数据的逻辑单元,一旦被误删除,不仅会导致该分区内的所有数据瞬间消失,还可能影响到整个硬盘的存储结构和数…

老牌软件,方便处理图片,量大管饱。

今天介绍的图片查看器名字是:FastStone Image Viewer,是一款可查看、编辑、批量重命名、批量转换的图片查看软件。文末有分享链接。 软件以资源管理器的方式管理你电脑里的图片,点击左侧可选择文件夹,右边可预览图片。 软妹用得最…

Python进阶编程总结

🧑 博主简介:CSDN博客专家,历代文学网(PC端可以访问:https://literature.sinhy.com/#/literature?__c1000,移动端可微信小程序搜索“历代文学”)总架构师,15年工作经验,…

Redis复制(replica)主从模式

Redis主从复制 Redis 的复制(replication)功能允许用户根据一个 Redis 服务器来创建任意多个该服务器的复制品,其中被复制的服务器为主服务器(master),而通过复制创建出来的服务器复制品则为从服务器&#…

R语言零基础系列教程-03-RStudio界面介绍与关键设置

代码、讲义、软件回复【R语言03】获取。 设置位置: 菜单栏 - Tools - Blobal Options 设置 通用设置 设置面板左侧General选项 版本选择: 一般只用一个版本即可 默认工作目录设置: 你希望RStudio打开时是基于哪个目录进行工作可以不设置, 因为脚本一般都是放置在特定项目路…

微信小程序刷题逻辑实现:技术揭秘与实践分享

页面展示: 概述 在当今数字化学习的浪潮中,微信小程序以其便捷性和实用性,成为了众多学习者刷题备考的得力工具。今天,我们就来深入剖析一个微信小程序刷题功能的实现逻辑,从代码层面揭开其神秘面纱。 小程序界面布局…

JVM--垃圾回收

垃圾回收的概念 垃圾回收主要针对的是堆中的对象,堆是一个共享的区域,创建的对象和数组都放在这个位置。但是我们不能一直的创建对象,也不是所有的对象能一直存放,如果不进行垃圾回收,内存迟早会耗尽,及时…

【教程】继承中的访问控制 C++

目录 简介public,protected 和 private继承中的 public,protected 和 private示例 简介 在 C 中派生类可以通过 public,protected 和 private 三种修饰符决定基类成员在派生类中的访问级别 public,protected 和 private 公有成…

【2025】基于python+django的驾校招生培训管理系统(源码、万字文档、图文修改、调试答疑)

课题功能结构图如下: 驾校招生培训管理系统设计 一、课题背景 随着机动车保有量的不断增加,人们对驾驶技能的需求也日益增长。驾校作为驾驶培训的主要机构,面临着激烈的市场竞争和学员需求多样化等挑战。传统的驾校管理模式往往依赖于人工操作…

要登录的设备ip未知时的处理方法

目录 1 应用场景... 1 2 解决方法:... 1 2.1 wireshark设置... 1 2.2 获取网口mac地址,wireshark抓包前预过滤掉自身mac地址的影响。... 2 2.3 pc网口和设备对接... 3 2.3.1 情况1:... 3 2.3.2 情…

go 安装swagger

1、依赖安装: # 安装 swag 命令行工具 go install github.com/swaggo/swag/cmd/swaglatest# 安装 gin-swagger 和 swagger 文件的依赖 go get -u github.com/swaggo/gin-swagger go get -u github.com/swaggo/files 2、测试 cmd中输入: swag -v 如果…

网络安全反渗透 网络安全攻防渗透

网络渗透防范主要从两个方面来进行防范,一方面是从思想意识上进行防范,另一方面就是从技术方面来进行防范。 1.从思想意识上防范渗透 网络攻击与网络安全防御是正反两个方面,纵观容易出现网络安全事故或者事件的公司和个人,在这些…

技术视界|构建理想仿真平台,加速机器人智能化落地

在近期的 OpenLoong 线下技术分享会 上,松应科技联合创始人张小波进行了精彩的演讲,深入探讨了仿真技术在机器人智能化发展中的关键作用。他结合行业趋势,剖析了现有仿真平台的挑战,并描绘了未来理想仿真系统的设计理念与实现路径…

环境配置 | 5分钟极简Git入门:从零上手版本控制

你是否刚接触Git?别担心!这篇指南将用最简单的步骤带你掌握Git核心操作,快速开启版本控制之旅!✨ 1.git在win10上的下载安装 1.1.下载git 打开官方网站 Git - Downloadshttps://git-scm.com/downloads ​ ​​ 1.2.git安装 …

计算机网络——DNS

一、什么是DNS? DNS(Domain Name System,域名系统) 是互联网的核心服务,负责将人类可读的域名(如 www.baidu.com)转换为机器可识别的 IP地址(如 14.119.104.254)。它像一…

SQLark 实战 | 如何从Excel、csv、txt等外部文件进行数据导入

数据导入导出是应用开发者在平时开发中最常用的操作之一,SQLark 里提供了方便的图形化界面来完成导入导出。本文先和大家分享如何从 Excel、csv、txt 等外部文件导入数据到数据库表中。 👉 前往 SQLark 官网:www.sqlark.com 下载全功能免费版…

钉钉(excel)能让表格中不是‘北京’的字符串自动加亮显示(方便查看)以及隔行填充严颜色是斑马色(方便查看)嘛

在钉钉在线表格中,虽然功能相对Excel有所简化,但仍然可以通过条件格式实现对特定内容的高亮显示。以下是具体步骤: 一、在钉钉在线表格中设置条件格式 1. 打开钉钉在线表格 登录钉钉,进入“钉钉在线表格”应用。 打开你需要操作…

Windows根据文件名批量在文件夹里查找文件并复制出来,用WPF实现的详细步骤

项目前言 在日常工作和生活中,我们常常会遇到需要从大量文件中根据文件名批量查找特定文件并复制到指定位置的情况。手动一个个查找和复制文件不仅效率低下,还容易出错。使用 Windows Presentation Foundation (WPF) 可以创建一个用户友好的图形界面应用…