使用 feign 调用时对微服务实例进行选择

news/2025/9/23 11:48:38/文章来源:https://www.cnblogs.com/yg_zhang/p/19106916

1.概述

在 微服务 调用的时候,我们会需要将微服务实例进行分组的情况,我们有订单和库存服务,订单服务 和库存服务 分别 为 A,B两组服务实例。 A 服务分组服务A用户,B服务分组服务B用户,这样就可以实现 一组服务对应一个用户,实现用户的应用服务隔离。本篇解决的是,订单A服务调用库存A服务,订单B服务调用库存B服务.

2.实现原理

2.1. 在服务启动的时候,指定一个服务分组

我现在有订单服务和库存服务,配置环境变量。

spring:application:name: order-serviceprofiles:active: devcloud:nacos:username: nacospassword: nacosdiscovery:server-addr: localhost:8848namespace:  localmetadata:group: ${group:A}

我们给每个微服务定义一个 group 的元数据,在启动的的时候指定这个数据。
启动程序命令 java -jar orderdemo-0.0.1-SNAPSHOT.jar --server.port=9902 --group=B

image

2.1. 在使用FEIGN访问服务的时候,选择服务实例

具体是根据当前的服务实例的分组,选择目标服务的服务实例。

3. 在我们的产品中实现代码如下

3.1 引入jar包

<dependency><groupId>com.redxun</groupId><artifactId>ac-core-loadbalance</artifactId><version>7.4-SNAPSHOT</version></dependency>

3.2 增加组选择器配置

@Configuration
public class FeignConfig {@Bean@Primarypublic IServiceSelector groupSelector() {return  new GroupServiceSelector();}
}

如果用户有其他的需求,可以实现IServiceSelector 接口后进行配置。

接口定义如下:

public interface IServiceSelector {List<ServiceInstance> getServices(List<ServiceInstance> var1, Environment var2);
}

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

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

相关文章

EI目录今年第3次更新!55本中国期刊被收录,附完整版下载

8月,EI Compendex数据库发布了最新版收录期刊目录。 目录实际更新时间为2025年7月24日 2025年截止8月份EI数据库已更新3次,更新时间分别为2025年1月、2025年4月和2025年7月。 本次目录共收录期刊5702本,其中包含Jou…

友点企业网站管理系统3d全屋定制设计软件

1.没镜像就拉取镜像 dockerhub中查看版本 官网 docker pull zookeeper:3.4.14 不加版本号也行&#xff0c;默认拉取最新版 创建并启动容器 docker run -p 2181:2181 --privilegedtrue --name zookeeper01 -d zookeeper –privilegedtrue 容器内用户开启root权限 docker ps…

程序员的未来:从技术岗位到全栈思维的进化之路 - 实践

程序员的未来:从技术岗位到全栈思维的进化之路 - 实践pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family: "Consolas&q…

envoy和nginx的区别

Envoy 和 Nginx 都是高性能的网络代理和反向代理服务器,广泛应用于现代分布式系统中。尽管它们在某些场景下功能重叠(如负载均衡、反向代理),但在设计目标、架构、功能特性和适用场景上存在显著差异。 以下是 Envo…

基于自适应差分进化算法的MATLAB实现

基于自适应差分进化算法(Adaptive Differential Evolution, ADE)的MATLAB实现一、算法原理 自适应差分进化算法通过动态调整缩放因子(F)和交叉概率(CR)提升全局搜索能力。核心改进包括:参数自适应:根据种群适应…

临沂专业网站建设公司哪家好做网站菜单背景图片

问你一句:「你知道 HTTP/1.1 该如何优化吗?」 我们可以从下面这三种优化思路来优化 HTTP/1.1 协议: 尽量避免发送 HTTP 请求在需要发送 HTTP 请求时&#xff0c;考虑如何减少请求次数减少服务器的 HTTP 响应的数据大小 下面&#xff0c;就针对这三种思路具体看看有哪些优化…

什么网站做推广效果好移动端网站没有icp

当遇到错误提示“vcruntime140.dll已加载&#xff0c;但找不到入口点”时&#xff0c;很多人可能会感到困惑&#xff0c;不知道如何去处理这个问题。不过没有必要紧张&#xff0c;在这里我会为大家详细解释 vcruntime140.dll 文件是什么&#xff0c;并指导大家如何高效地解决 v…

购物网站功能模块设计dw制作asp网站模板下载

题目&#xff1a; 给你一个下标从 0 开始的二维整数矩阵 grid&#xff0c;大小为 n * n &#xff0c;其中的值在 [1, n] 范围内。除了 a 出现两次&#xff0c;b 缺失 之外&#xff0c;每个整数都恰好出现一次 。 任务是找出重复的数字a 和缺失的数字 b 。 返回一个下标从 0 开始…

微网站平台微网站建设方案模板南昌企业网站建设公司

ETL服务内容包含&#xff1a; 数据迁移数据合并数据同步数据交换数据联邦数据仓库

电子商务网站建设课后习题答案成都服务器idc托管

文章目录 DFS排列组合问题排列组合问题的标准模板排列LeetCode46全排列题目描述代码 LeetCode47全排列Ⅱ题目描述代码 组合LeetCode77组合题目描述代码 LeetCode39组合总和题目描述代码 LeetCode40组合总和Ⅱ题目描述代码 LeetCode216组合总和Ⅲ题目描述代码 DFS排列组合问题 …

网站广告素材酒店网络营销推广方式

精读文稿 这期我们介绍的这本书叫做《安静》&#xff0c;副标题是《内向性格的竞争力》。本书共有267页&#xff0c;我会用大约25分钟的时间为你讲述书中的精髓。内向性格具备什么样的竞争力&#xff1f;内向性格的人在人际交往和日常生活中似乎总是吃亏&#xff0c;因为他们不…

凡拓数创北京seo专业团队

Hugging Face预训练GPT微调ChatGPT&#xff08;微调入门&#xff01;新手友好&#xff01;&#xff09; 在实战中&#xff0c;⼤多数情况下都不需要从0开始训练模型&#xff0c;⽽是使⽤“⼤⼚”或者其他研究者开源的已经训练好的⼤模型。 在各种⼤模型开源库中&#xff0c;最…

网站开发项目的规划与设计文档wordpress upload

《C语言程序设计》课程复习及模拟题讲评;《C语言程序设计》试卷各类题目分数分布情况一、选择题 40分(20小题, 每题2分 ) 主要考核基本概念, 词法, 语法和小程序阅读等。二、阅读题 12分(2小题, 每题6分)三、改错题 12分(2小题, 每题6分)四、设计题 36分(4小题, 每题9分) ;启动…

【SPIE出版、主题宽泛、快速检索】2025年可持续发展与数字化转型国际学术会议(SDDT 2025)

#SPIE 出版-ISSN:0277-786X# #高录用稳检索-快至见刊后1个月EI、Scopus检索# #可持续发展、管理、交通、数字化、社会学、计算机方向及其他交叉学科均可投递# 2025年可持续发展与数字化转型国际学术会议(SDDT 2025) 20…

张家界做网站广告制作公司合同

手机为什么这么卡&#xff1a;闪存I/O测试AndroBench软件名称&#xff1a;Androbench软件版本&#xff1a;4.0.1软件大小&#xff1a;1.01MB软件授权&#xff1a;免费适用平台&#xff1a;Android很多朋友买手机只是为了日常使用&#xff0c;卡顿是最影响日常使用的心情的问题了…

Sping Boot 打包排除相关jar依赖包,CMD 启动方式 pom.xml 说明.

Sping Boot 打包排除相关jar依赖包,CMD 启动方式 pom.xml 说明.Posted on 2025-09-23 11:40 且行且思 阅读(0) 评论(0) 收藏 举报根目录pom.xml<build><plugins><plugin><groupId>org.…

langfuse使用的postgresql异机备份和恢复(docker)并进行langfuse版本升级

环境:OS:Centos 7pg:16.4langfuse旧版本:V2.70.1langfuse新版本:V3.110原langfuse(v2)机器:192.168.1.52新langfuse机器(v3):192.168.1.1351.新机器安装pg并启动(非docker)这一步的目的是进行pg的原库备份后,异机恢复,…

国产化Excel处理组件Spire.XLS教程:Java在 Excel 表格中轻松添加下标

当 Excel 表格中包含化学式、统计脚注或科学数据时,往往需要使用下标来表示。但是,Microsoft Excel 自带的下标功能操作比较繁琐,而且也不支持批量应用,手动操作通常需要花费大量的时间。 基于此,本篇指南将介绍如…

tips图解复杂数组、指针声明

顺转法(顺时针旋转)带你带你看复杂数组和指针 int (*func_ptr_arr[5])();int* ((ptr_to_func)())();int ((arr[2])())[10];int (((*func_returning_ptr)())[4])();int (*((ptr_to_func2)())[2][3])();int* (**(*ptr…

北京市保障房建设投资中心网站瘫痪微信网页设计总结

介于直接使用源码编译安装 QT 耗时较长&#xff0c;而且需要手动编写脚本进行编译&#xff0c;难度较大&#xff0c;这里选择直接以图形化界面的方式安装 QT 。 目录 1、下载 QT 安装包 2、安装 QT 3、添加环境变量 4、cmake 引入 QT 库 5、Failed to find “GL/gl.h“ in…