[发明专利]微服务调用方法、装置及电子设备在审
申请号: | 202210772185.2 | 申请日: | 2022-06-30 |
公开(公告)号: | CN115129490A | 公开(公告)日: | 2022-09-30 |
发明(设计)人: | 张明 | 申请(专利权)人: | 中电金信软件有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京市立方律师事务所 11330 | 代理人: | 张筱宁 |
地址: | 100192 北京市海淀区西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 微服 调用 方法 装置 电子设备 | ||
本申请实施例提供了一种微服务调用方法、装置及电子设备,涉及计算机技术领域。该方法包括:根据接收到的微服务调用请求中的调用方式标识确定微服务调用请求对应的微服务调用方案。在调用方式标识指示微服务调用方案为滚动超时方案时,根据微服务调用请求的当前可用调用时间以及第一目标微服务的最低调用时限,判断是否调用第一目标微服务。在不调用第一目标微服务时,停止微服务调用流程并将已产生的数据进行回退。本申请在判定出下一个微服务的调用会超时的情况下终止调用流程,对已产生的数据进行回退,然后返回客户端调用超时的提示信息,能够有效避免业务数据与微服务子系统侧管理的业务数据不一致的问题。
技术领域
本申请涉及计算机技术领域,具体而言,本申请涉及一种微服务调用方法、装置及电子设备。
背景技术
集中式系统拆分为分布式系统后,分布式系统下各微服务子系统相互独立,通过远程调用方式进行业务交互。
在对各微服务子系统进行远程调用时,有可能会出现被调用微服务实际在处理过程中,但调用方等待预设时长后判定调用超时的情况,此时调用方将给出客户端请求超时的反馈。而事实上,被调用的微服务再经历一段时间后其处理结果可能成功,也可能失败。最终导致客户端侧的业务数据与微服务子系统侧管理的业务数据不一致的问题。
发明内容
本申请实施例的目的旨在能解决微服务调用过程中客户端侧的业务数据与微服务子系统侧管理的业务数据不一致的问题。
第一方面,本申请提供了一种微服务调用方法,该方法包括:
接收微服务调用请求,微服务调用请求包括请求标识和调用方式标识;
在调用方式标识指示微服务调用方案为滚动超时方案时,针对当前待调用的第一目标微服务,基于请求标识确定第一目标微服务的最低调用时限;其中,微服务调用请求处理过程中需调用多个目标微服务;
根据微服务调用请求的当前可用调用时间以及第一目标微服务的最低调用时限,判断是否调用第一目标微服务;
在确定不调用第一目标微服务的情况下,停止微服务调用流程并将已被成功调用的各目标微服务下针对微服务调用请求产生的数据进行回退。
在第一方面的可选实施例中,根据微服务调用请求的当前可用调用时间以及第一目标微服务的最低调用时限,判断是否调用第一目标微服务,包括:
基于请求标识确定微服务调用请求的总调用时限;
基于总调用时限获取微服务调用请求的当前可用调用时间,若当前可用调用时间大于第一目标微服务的最低调用时限,则调用第一目标微服务。
在第一方面的可选实施例中,当微服务调用方案为滚动超时方案时,方法还包括:
基于请求标识确定各个目标微服务的调用顺序和调用信息;调用信息包括端口号和互联网协议地址;
基于各个目标微服务的调用信息和调用顺序依次调用各个目标微服务。
在第一方面的可选实施例中,基于总调用时限获取微服务调用请求的当前可用调用时间,包括:
确定所有已完成调用的目标微服务对应的总实际调用时间;
基于总调用时限与总实际调用时间,获取微服务调用请求的当前可用调用时间。
在第一方面的可选实施例中,基于总调用时限与总实际调用时间,获取微服务调用请求的当前可用调用时间,包括:
用总调用时限减去总实际调用时间,得到当前可用调用时间。
在第一方面的可选实施例中,微服务调用方案还包括重试方案,当微服务调用方案为重试方案时,方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中电金信软件有限公司,未经中电金信软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210772185.2/2.html,转载请声明来源钻瓜专利网。