[发明专利]基于微服务的请求转发方法、装置和服务器有效
申请号: | 201811204554.8 | 申请日: | 2018-10-16 |
公开(公告)号: | CN109412944B | 公开(公告)日: | 2023-05-12 |
发明(设计)人: | 秦岭;周晶 | 申请(专利权)人: | 深圳壹账通智能科技有限公司 |
主分类号: | H04L45/12 | 分类号: | H04L45/12;H04L45/125;H04L41/50 |
代理公司: | 深圳市立智方成知识产权代理事务所(普通合伙) 44468 | 代理人: | 王增鑫 |
地址: | 518052 广东省深圳市前海深港合作区前*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 微服 请求 转发 方法 装置 服务器 | ||
本申请提供一种基于微服务的请求转发方法、装置和服务器,所述的方法包括:若当前微服务向目标微服务发送原始请求失败时,获取预先构建的用于描述微服务之间依赖关系的有向图;根据所述有向图,获得所述当前微服务和所述目标微服务之间的若干个最短路径;从各个最短路径中确定出若干个正常连通的路径,从若干个正常连通的路径中选取一个路径;基于选取的路径,将所述原始请求由所述当前微服务发送至所述目标微服务。本申请实施例在网络故障时无需人工干预即可正常执行网络请求,提高了效率。
技术领域
本申请涉及微服务技术领域,具体而言,本申请涉及一种基于微服务的请求转发方法、装置和服务器。
背景技术
当前微服务越来越流行,各个微服务都是以单独的服务的形式运行,它们可能分布在多台机器的多个接口上,各个微服务彼此之间通过网络通讯来进行交互。在大量使用微服务的情况下,微服务与微服务之间的连通性成为了整个系统是否能够正常工作的重要指标。而实际情况下,尤其是云环境中,网络经常会发生局部或者大量的波动,另外跨机房的情况下,网络的连通性更成为请求能否成功执行的重要环节。但是目前在自身微服务与目标微服务之间的网络出现故障时,需要人工干预才能正常执行网络请求,效率较低。
发明内容
本申请针对现有方式的缺点,提出一种基于微服务的请求转发方法、装置和服务器,以在网络故障时无需人工干预即可正常执行网络请求,提高效率。
本申请的实施例根据第一个方面,提供了一种基于微服务的请求转发方法,包括:
若当前微服务向目标微服务发送原始请求失败时,获取预先构建的用于描述微服务之间依赖关系的有向图;
根据所述有向图,获得所述当前微服务和所述目标微服务之间的若干个最短路径;
从各个最短路径中确定出若干个正常连通的路径,从若干个正常连通的路径中选取一个路径;
基于选取的路径,将所述原始请求由所述当前微服务发送至所述目标微服务。
在一个实施例中,所述从各个最短路径中确定出若干个正常连通的路径,包括:
构建各个最短路径的探测请求;所述探测请求包括最短路径中各个微服务之间的先后顺序,所述探测请求按照所述先后顺序进行转发;
根据各个最短路径的探测请求,确定各个最短路径中所述当前微服务的下一个微服务;
分别向各个最短路径中的下一个微服务发送对应的探测请求;
检测各个最短路径中的下一个微服务是否返回响应消息;所述响应消息为所述目标微服务根据接收到的探测请求生成的信息;
若是,确定对应的最短路径为正常连通的路径。
在一个实施例中,所述从若干个正常连通的路径中选取一个路径,包括:
从若干个正常连通的路径中选取最早返回响应消息的路径。
在一个实施例中,所述从若干个正常连通的路径中选取一个路径,包括:
从若干个正常连通的路径中选取路径的可用带宽最大的路径。
在一个实施例中,所述从若干个正常连通的路径中选取路径的可用带宽最大的路径,之前,还包括:
从若干个正常连通的路径中选取一个路径;
获取所述路径中各个微服务的可用带宽;
根据各个微服务的可用带宽,计算所述路径的可用带宽;
从若干个正常连通的路径中选取另一个路径,返回所述获取所述路径中各个微服务的可用带宽的步骤,直至若干个正常连通的路径中每个路径均被选取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳壹账通智能科技有限公司,未经深圳壹账通智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811204554.8/2.html,转载请声明来源钻瓜专利网。