一种请求处理方法、装置、服务器及存储介质制造方法及图纸

技术编号:33247103 阅读:14 留言:0更新日期:2022-04-27 18:01
本发明专利技术实施例公开了一种请求处理方法、装置、服务器及存储介质,该方法包括:接收访问请求;根据访问请求结合预确定的路由树确定目标节点,目标节点对应关联处理策略,路由树根据集群标识和服务名称标识生成,和/或路由树根据占位符生成,占位符用于确定资源实体;根据目标节点对应的处理策略对访问请求进行相应处理,解决了现有技术中无法准确转发用户的访问请求的问题,预先构建路由树,将访问请求与路由树进行查询匹配,得到目标节点,不同的目标节点对应关联不同的处理策略。通过路由树定义统一的路由规范,可以对任意类型、任意目的地址的访问请求进行路由,实现统一的路由声明和处理,进而实现对访问请求的准确和及时处理。理。理。

【技术实现步骤摘要】
一种请求处理方法、装置、服务器及存储介质


[0001]本专利技术实施例涉及通信
,尤其涉及一种请求处理方法、装置、服务器及存储介质。

技术介绍

[0002]在云原生的环境下,很多企业往往会以微服务的形式来部署自己的服务,并使用服务网关来对外提供统一的访问入口。传统的业务层网关已经比较成熟,他们支持以配置文件,或者Filter的形式对HTTP请求进行路由,包装和转发。例如,Nginx和Zuul等网关都支持以URL Pattern的形式,对某种类型的资源定义一组上游服务,并通过负载均衡机制,将请求分发给上游服务。微服务通常以REST的方式暴露资源。在REST的框架下,资源会以URL的形式进行表示。很多成熟的Web框架,例如SpringBoot,Gin,FastAPI都支持对URL进行解析,并从中提取出某种资源在某个微服务中的唯一标识。
[0003]现有技术中对路由的定义分为两种,其一是使用通配符对某一类请求进行转发,其二是对某一个具体的资源请求使用唯一的Handler进行处理。在联邦云的场景下,联邦控制台为了提供资源概览,资源上下文等功能,往往需要将上述两种范式配合使用。例如,对于资源A1,位于集群c1中的租户t1,联邦控制台只需像常规网关一样转发请求;对于资源A2,位于集群c2中的租户t3,出于某种原因,如租户版本不兼容,认证体系不同,联邦控制台需要使用一个Handler对其进行处理。但是,目前的路由规则在实现时,网关所使用的服务级别的路由规则,以及Web框架所使用的Handler级别的路由规则定义难以很好地融合,对于上述业务场景,传统的网关无法提供一种统一的路由声明和处理的方式,导致用户的请求无法正确、及时转发处理。

技术实现思路

[0004]本专利技术提供一种请求处理方法、装置、服务器及存储介质,以实现对用户的访问请求按照正确的路由规则进行转发处理。
[0005]第一方面,本专利技术实施例提供了一种请求处理方法,所述请求处理方法包括:
[0006]接收访问请求;
[0007]根据所述访问请求结合预确定的路由树确定目标节点,所述目标节点对应关联处理策略,所述路由树根据集群标识和服务名称标识生成,和/或所述路由树根据占位符生成,所述占位符用于确定资源实体;
[0008]根据所述目标节点对应的处理策略对所述访问请求进行相应处理。
[0009]第二方面,本专利技术实施例还提供了一种请求处理装置,该请求处理装置包括:
[0010]请求接收模块,用于接收访问请求;
[0011]节点确定模块,用于根据所述访问请求结合预确定的路由树确定目标节点,所述目标节点对应关联处理策略,所述路由树根据集群标识和服务名称标识生成,和/或所述路由树根据占位符生成,所述占位符用于确定资源实体;
[0012]请求处理模块,用于根据所述目标节点对应的处理策略对所述访问请求进行相应处理。
[0013]第三方面,本专利技术实施例还提供了一种服务器,该服务器包括:
[0014]一个或多个处理器;
[0015]存储器,用于存储一个或多个程序,
[0016]当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如本专利技术实施例中任一所述的一种请求处理方法。
[0017]第四方面,本专利技术实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本专利技术实施例中任一所述的一种请求处理方法。
[0018]本专利技术实施例提供了一种请求处理方法、装置、服务器及存储介质,通过接收访问请求;根据所述访问请求结合预确定的路由树确定目标节点,目标节点对应关联处理策略,所述路由树根据集群标识和服务名称标识生成,和/或所述路由树根据占位符生成,所述占位符用于确定资源实体;根据所述目标节点对应的处理策略对所述访问请求进行相应处理,解决了现有技术中无法准确转发用户的访问请求的问题,预先构建路由树,将访问请求与路由树进行查询匹配,得到与访问请求匹配的目标节点,不同的目标节点对应关联不同的处理策略,在确定目标节点后,确定目标节点的处理策略,进而根据处理策略对访问请求进行相应处理。通过路由树定义统一的路由规范,可以对任意类型、任意目的地址的访问请求进行路由,并确定相应的处理策略进行处理,实现统一的路由声明和处理,进而实现对访问请求的准确和及时处理。
附图说明
[0019]图1是本专利技术实施例一中的一种请求处理方法的流程图;
[0020]图2是本专利技术实施例一中的一种路由树的结构示例图;
[0021]图3是本专利技术实施例二中的一种请求处理方法的流程图;
[0022]图4是本专利技术实施例二中的一种路由上下文的展示示例图;
[0023]图5是本专利技术实施例二中的一种顶层资源聚合实现示例图;
[0024]图6是本专利技术实施例三中的一种请求处理装置的结构示意图;
[0025]图7是本专利技术实施例四中的一种服务器的结构示意图。
具体实施方式
[0026]为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施例方式作进一步地详细描述。应当明确,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0027]下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
[0028]在本申请的描述中,需要理解的是,术语“第一”、“第二”、“第三”等仅用于区别类
似的对象,而不必用于描述特定的顺序或先后次序,也不能理解为指示或暗示相对重要性。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本申请中的具体含义。此外,在本申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
[0029]实施例一
[0030]图1给出了本申请实施例一提供的一种请求处理方法的流程示意图,该方法适用于在对用户的访问请求进行转发处理的情况。该方法可以由服务器执行,具体包括如下步骤:
[0031]S101、接收访问请求。
[0032]在本实施例中,访问请求具体可以理解为用户访问集群中某一资源时所生成的请求。用户在访问资源时,所生成的访问请求可以包含集群标识和服务名称标识,实现集群服务感知,也可以包括占位符,通过占位符定位集群标识,实现资源实体感知。用户在具有访问需求时,生成相应的访问请求,并发送至网关,由网关进行统一处理。
[0033]S102、根据访问请求结合预确定的路由树确定本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种请求处理方法,其特征在于,包括:接收访问请求;根据所述访问请求结合预确定的路由树确定目标节点,所述目标节点对应关联处理策略,所述路由树根据集群标识和服务名称标识生成,和/或所述路由树根据占位符生成,所述占位符用于确定资源实体;根据所述目标节点对应的处理策略对所述访问请求进行相应处理。2.根据权利要求1所述的方法,其特征在于,所述路由树的确定步骤包括:获取路由表;根据所述路由表确定至少一条路由规则;对每个路由规则分别进行解析,生成路由树;各所述路由规则包括集群标识和服务名称标识,或者,所述路由规则包括占位符。3.根据权利要求1所述的方法,其特征在于,所述根据所述访问请求结合预确定的路由树确定目标节点,包括:对所述访问请求进行解析,查找所述访问请求中的标记;将各所述标记按照顺序依次与所述路由树进行匹配,得到目标节点。4.根据权利要求3所述的方法,其特征在于,所述将各所述标记按照顺序依次与所述路由树进行匹配,得到目标节点,包括:将各所述标记中首个标记作为当前待匹配标记,将所述路由树中的首个节点作为当前节点;将所述当前待匹配标识与当前节点进行匹配;当所述当前节点为第一类型节点时,如果匹配成功,判断匹配成功的当前节点的下一节点是否为可执行节点,若否,将所述当前待匹配标记的下一标记作为新的当前待匹配标记,将所述当前节点的下一节点作为新的当前节点,返回执行所述当前待匹配标识与当前节点的匹配操作;若是,将下一节点确定为目标节点;当所述当前节点为第一类型节点时,如果匹配失败,确定所述目标节点为空节点。5.根据权利要求4所述的方法,其特征在于,还包括:当所述当前结点为资源占位符节点时,根据所述当前待匹配标记确定顶层资源标识、服务名称标识和资源类型;根据所述顶层资源标识、服务名称标识和资源类型查找顶层资源表,确定所述访问请求对应的集群标识,并写入路由上下文;判断所述当前节点的下一节点是否为可执行节点,若否,将所述当前待匹配标记的下一标记作为新的当前待匹配标记,将所述当前节点的下一节点作为新的当前节点,返回执行所述当前待匹配标识与当前节点的匹配操作;若是,将下一节点确定为目标节点,并将所述路由上下文对应的路由信息传递给所述目标节点。6.根据权利要求5所述的方法,其特征在于,顶层资源表的确定步骤包括:获取至少一个顶层资源标识;确定各所述顶层资源标识对应的集...

【专利技术属性】
技术研发人员:闻云路颜伟王天青
申请(专利权)人:星环信息科技上海股份有限公司
类型:发明
国别省市:

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

1