一种微服务间的调用方法和相关装置制造方法及图纸

技术编号:33630870 阅读:12 留言:0更新日期:2022-06-02 01:34
本申请公开了一种微服务间的调用方法和相关装置,响应于第一微服务启动,第一微服务从注册中心获取第一微服务订阅的注册服务集合,该注册服务集合包括第一微服务订阅的至少一个微服务对应的调用地址,如第二微服务对应的目标调用地址。第一微服务接收调用第二微服务的调用指令后,根据该调用指令从注册服务集合中获取目标调用地址,从而第一微服务根据目标调用地址调用第二微服务。由此,在各个微服务启动后,各个微服务会将各自的调用地址发送至注册中心,注册中心保存各个微服务对应的最新的调用地址,即使第二微服务对应的目标调用地址发生变化,无需调整DNS解析地址,注册中心也会保存有最新的目标调用地址,实现微服务间的调用。的调用。的调用。

【技术实现步骤摘要】
一种微服务间的调用方法和相关装置


[0001]本专利技术涉及云计算
,尤其是涉及一种微服务间的调用方法和相关装置。

技术介绍

[0002]微服务系统为一种小型的软件的组件群,提倡将单一应用程序(软件)划分成一组小的服务,每一个小的服务可以称为一种微服务,通过一个组件实现微服务对应的功能,多个微服务之间互相协调、互相配合,为用户提供最终价值。
[0003]相关技术中,会通过调用外部表象化状态转变(Representational State Transfer,REST)的方式实现微服务间的调用,例如,微服务A通过调用外部REST的方式调用微服务B,从而实现微服务间的相互调用。
[0004]但是,若微服务的内部地址发生变更,必须要对应调整域名系统(Domain Name System)中的解析地址,否则会出现由于内部地址错误导致的内部微服务间无法互相调用的问题。

技术实现思路

[0005]针对上述问题,本申请提供一种微服务间的调用方法和相关装置,用于解决由于内部地址错误导致的内部微服务间无法互相调用的问题。
[0006]基于此,本申请实施例公开了如下技术方案:
[0007]一方面,本申请实施例提供一种微服务间的调用方法,所述方法包括:
[0008]响应于第一微服务启动,所述第一微服务从注册中心获取注册服务集合;其中,所述注册服务集合包括所述第一微服务订阅的至少一个微服务对应的调用地址;
[0009]所述第一微服务接收调用第二微服务的调用指令;其中,所述第二微服务为所述第一微服务订阅的微服务,在启动后将所述第二微服务对应的目标调用地址发送至所述注册中心;
[0010]所述第一微服务根据所述调用指令,从所述注册服务集合中确定所述目标调用地址;
[0011]所述第一微服务根据所述目标调用地址调用所述第二微服务。
[0012]可选的,所述方法还包括:
[0013]若所述注册中心检测到所述目标调用地址发生变化,所述第一微服务接收所述注册中心发送更新后的目标调用地址。
[0014]可选的,所述第一微服务接收调用第二微服务的调用指令,包括:
[0015]所述第一微服务接收调用所述第一微服务的综合指令;
[0016]所述第一微服务从所述综合指令中解析出调用第二微服务的调用指令。
[0017]可选的,所述第一微服务接收调用所述第一微服务的综合指令,包括:
[0018]响应于所述综合指令通过网关服务的鉴权,所述第一微服务接收所述综合指令。
[0019]可选的,所述方法还包括:
[0020]响应于所述综合指令未通过所述网关服务的鉴权,所述网关服务向用户返回操作不合法的提示,并不再向所述第一微服务发送调用所述第一微服务的综合指令。
[0021]可选的,所述网关服务包括多种子路由,不同子路由对应不同的鉴权流程。
[0022]可选的,所述方法还包括:
[0023]所述网关服务接收所述综合指令,所述综合指令携带所述第一微服务的标识;
[0024]所述网关服务根据所述综合指令确定所述第一微服务对应的目标子路由;
[0025]所述网关服务将所述综合指令发送至所述目标子路由执行对应的鉴权流程。
[0026]另一方面本申请提供了一种微服务间的调用装置,所述装置包括:获取单元、接收单元、确定单元和调用单元;
[0027]所述获取单元,用于响应于第一微服务启动,所述第一微服务从注册中心获取注册服务集合;其中,所述注册服务集合包括所述第一微服务订阅的至少一个微服务对应的调用地址;
[0028]所述接收单元,用于所述第一微服务接收调用第二微服务的调用指令;其中,所述第二微服务为所述第一微服务订阅的微服务,在启动后将所述第二微服务对应的目标调用地址发送至所述注册中心;
[0029]所述确定单元,用于所述第一微服务根据所述调用指令,从所述注册服务集合中确定所述目标调用地址;
[0030]所述调用单元,用于所述第一微服务根据所述目标调用地址调用所述第二微服务。作为一种可能的实现方式,所述接收单元,用于:
[0031]若所述注册中心检测到所述目标调用地址发生变化,所述第一微服务接收所述注册中心发送更新后的目标调用地址。
[0032]可选的,所述接收单元,用于:
[0033]所述第一微服务接收调用所述第一微服务的综合指令;
[0034]所述第一微服务从所述综合指令中解析出调用第二微服务的调用指令。
[0035]可选的,所述接收单元,用于:
[0036]响应于所述综合指令通过网关服务的鉴权,所述第一微服务接收所述综合指令。
[0037]可选的,所述装置还包括返回单元,用于:
[0038]响应于所述综合指令未通过所述网关服务的鉴权,所述网关服务向用户返回操作不合法的提示,并不再向所述第一微服务发送调用所述第一微服务的综合指令。
[0039]可选的,所述装置包括的网关服务包括多种子路由,不同子路由对应不同的鉴权流程。
[0040]可选的,所述装置还包括鉴权单元,用于:
[0041]所述网关服务接收所述综合指令,所述综合指令携带所述第一微服务的标识;
[0042]所述网关服务根据所述综合指令确定所述第一微服务对应的目标子路由;
[0043]所述网关服务将所述综合指令发送至所述目标子路由执行对应的鉴权流程。
[0044]另一方面本申请提供了一种计算机设备,所述设备包括处理器以及存储器:
[0045]所述存储器用于存储程序代码,并将所述程序代码传输给所述处理器;
[0046]所述处理器用于根据所述程序代码中的指令执行上述方面所述的方法。
[0047]另一方面本申请提供了一种计算机可读存储介质,所述计算机可读存储介质用于
存储计算机程序,所述计算机程序用于执行上述方面所述的方法。
[0048]另一方面,本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方面所述的方法。
[0049]相对于现有技术,本申请上述技术方案的优点在于:
[0050]第一微服务通过注册中心订阅第二微服务,第二微服务在启动后,会将第二微服务对应的调用地址发送至注册中心。响应于第一微服务启动,第一微服务从注册中心获取第一微服务订阅的注册服务集合,该注册服务集合包括第一微服务订阅的至少一个微服务对应的调用地址,如第二微服务对应的目标调用地址。第一微服务接收调用第二微服务的调用指令后,根据该调用指令从注册服务集合中获取目标调用地址,从而第一微服务根据目标调用地址调用第二微服务。由此,在各个微服务启动后,各个微服务会将各自的调用地址发送至注册中心,注册中心保存各个微服务对应的最新本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种微服务间的调用方法,其特征在于,所述方法包括:响应于第一微服务启动,所述第一微服务从注册中心获取注册服务集合;其中,所述注册服务集合包括所述第一微服务订阅的至少一个微服务对应的调用地址;所述第一微服务接收调用第二微服务的调用指令;其中,所述第二微服务为所述第一微服务订阅的微服务,在启动后将所述第二微服务对应的目标调用地址发送至所述注册中心;所述第一微服务根据所述调用指令,从所述注册服务集合中确定所述目标调用地址;所述第一微服务根据所述目标调用地址调用所述第二微服务。2.根据权利要求1所述的微服务间的调用方法,其特征在于,所述方法还包括:若所述注册中心检测到所述目标调用地址发生变化,所述第一微服务接收所述注册中心发送更新后的目标调用地址。3.根据权利要求1所述的微服务间的调用方法,其特征在于,所述第一微服务接收调用第二微服务的调用指令,包括:所述第一微服务接收调用所述第一微服务的综合指令;所述第一微服务从所述综合指令中解析出调用第二微服务的调用指令。4.根据权利要求3所述的微服务间的调用方法,其特征在于,所述第一微服务接收调用所述第一微服务的综合指令,包括:响应于所述综合指令通过网关服务的鉴权,所述第一微服务接收所述综合指令。5.根据权利要求3所述的微服务间的调用方法,其特征在于,所述方法还包括:响应于所述综合指令未通过所述网关服务的鉴权,所述网关服务向用户返回操作不合法的提示,并不再向所述第一微服务发送调用所述第一微服务的综合指令。6.根据权利要求4或5所述的微服务间的调用方法,其特征在于,所述方法还包括:所述网关服务接收所述综合指令,所述综合指令携带...

【专利技术属性】
技术研发人员:左浩
申请(专利权)人:海尔智家股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1