设为首页
收藏本站
开启辅助访问
全部
问与答
创意
技术
酷工作
生活
交易
资源
节点
飞墙
Follow
明白贴
人人影库
报酬
登录
注册
飞社-令人惊奇的创意工作者社区-
›
首页
›
Java
›
微服务中某个服务对外接口变化,那么调用这个接口的所有 ...
FSHEX=FIND+SHARE+EXPRESS
飞社-令人惊奇的创意工作者社区- 是一个关于发现分享表达的地方
现在登录
没有账号?
立即注册
推荐主题
›
两个 offer,一个 web3,一个互联网中厂,
›
初级程序员的未来是什么
›
Java 狗一枚, 37 了,后面的路该咋走呢?
›
为什么智驾要在碰撞前退出?
›
大家帮忙推荐一个 100W 的氮化镓充电器
今日热议主题
M1 iPad pro 耗电惊人
CPU 常年 100 度,要紧吗?
有没有遇到过那种很喜欢砍工时的项目管理
mac mini 放办公室摸鱼怎么样?
移动 wifi 如何选择
究竟从什么时候开始,出现交通事故第一时间
发现一个有意思的项目,把一个字符串隐藏到
测试了几个 OCR
为什么都在纠结智驾提前 2 秒退出的问题,
出两张 ESTK 和 CTHK 蓝卡和 CTMO 蓝卡
微服务中某个服务对外接口变化,那么调用这个接口的所有服务都需要更新,有没有什么好的方案?
chenzw2
· 2025-2-23 23:43:02 · 1036 次点击
看到讨论微服务优劣的帖子,我有个疑问,如果微服务中的某个基础服务对外接口发生变化,假设有 10 个服务调用了此接口,那么所有接口都需要重新改动?甚至于有时不知道哪些服务会调用到这个变动的接口,这是个大问题,请问大家都用什么方案来解决以上问题?
举报
·
1036 次点击
登录
注册
站外分享
微信扫一扫
QQ分享
微博分享
豆瓣分享
复制链接
显示全部
|
最新评论
9 条回复
沙发
littlewing
初学
2025-2-23 23:44:53
变化当然是要考虑兼容性啊
板凳
ipwx
小成
2025-2-23 23:46:36
把旧的接口留着,调一下新的接口相关代码呗。微软 20 年老 API 都留着呢
地板
cvbnt
小成
2025-2-23 23:52:38
那要看什么级别的改动,如果是接口名称,参数修改那没辙,但是可以单独将请求对外接口封装到单独的一个服务里供其他服务使用,这样外部接口发生变化,仅需要改动这一个服务就行了
5#
quan7u
小成
2025-2-23 23:58:35
1 、版本号 or 参数控制接口版本,比如保留 v1 、新开 f ,通知上游接口切换 2 、完善监控,统计接口流量、分渠道的调用量
6#
lnbiuc
小成
2025-2-23 23:58:40
旧的接口不变,新的改成 f 版本,其他的服务如果有需要就改,没需要就维持现状
7#
xuanbg
小成
2025-2-24 06:55:50
首先,出现 10 个服务调用情况基本就是设计的问题。代码写错地方真的比写错了代码还糟糕。 然后,问题已经出现了,那该怎么办呢?简单,给一个 V2 版本就行了。需要新的改用 V2 版本,不需要的继续用 V1 ,就不需要动他了。
8#
conn4575
初学
2025-2-24 08:13:38
如果你有更上层的 api 网关的话,可以在上面做参数重写,这就是 api 网关的意义。否则就只能用 v1 f 做好兼容了
9#
wogogoing
小成
2025-2-24 09:00:23
/api/v1 /api/f 让需要的服务显式变更。
10#
lasuar
小成
2025-2-24 10:01:35
1. 内部逻辑变化不影响其他服务,仅接口出入参变化需要关联更新 2. 接口出入参变化属于较大结构调整,可能是因为之前设计不完善或业务/功能原因需要调整,频率较低 3. 微服务中的服务调用一般是基于生成式代码的 RPC 调用,不存在说 [不知道影响了哪些服务] 4. 楼主的问题在微服务中属于基础,最好是先尝试本地使用熟悉语言实践一下微服务架构,这样方能避免一知半解的状态。
浏览过的版块
GitHub
投资
返回顶部