CN111181860A - 基于zuul网关的路由转发方法、装置及系统 - Google Patents

基于zuul网关的路由转发方法、装置及系统 Download PDF

Info

Publication number
CN111181860A
CN111181860A CN202010014302.XA CN202010014302A CN111181860A CN 111181860 A CN111181860 A CN 111181860A CN 202010014302 A CN202010014302 A CN 202010014302A CN 111181860 A CN111181860 A CN 111181860A
Authority
CN
China
Prior art keywords
gateway
request
service interface
route
end service
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202010014302.XA
Other languages
English (en)
Inventor
樊兵
王宇
郭近之
许昆
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suning Cloud Computing Co Ltd
Original Assignee
Suning Cloud Computing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suning Cloud Computing Co Ltd filed Critical Suning Cloud Computing Co Ltd
Priority to CN202010014302.XA priority Critical patent/CN111181860A/zh
Publication of CN111181860A publication Critical patent/CN111181860A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0876Network architectures or network communication protocols for network security for authentication of entities based on the identity of the terminal or configuration, e.g. MAC address, hardware or software configuration or device fingerprint
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/30Profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Power Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于zuul网关的路由转发方法、装置及系统,其中方法包括:网关动态获取存储在外部数据库中的路由配置信息并刷新路由配置;所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;所述网关调用所述对应的后端服务接口对转换后的前端请求进行处理。相比于现有技术,本发明实现网关动态配置路由的同时,由网关对前端请求进行协议转换以便调用后端微服务。

Description

基于zuul网关的路由转发方法、装置及系统
技术领域
本发明涉及网关技术领域,具体涉及一种基于zuul网关的路由转发方法、装置及系统。
背景技术
现系统大多采用前后端分离架构,提供给前端的服务系统较多,前端调用后端服务时,每个服务系统都要做鉴权校验过滤,没有统一的入口,不方便维护管理,后端开发和维护量很大,在跨域,限流,异常等情况下,也得不到好的解决。解决这些问题就引入了网关技术,在前端和后端服务之间加一层网关,网关除了要实现请求路由、校验过滤等功能外,还有请求转发时的限流、异常重发、熔断机制、服务的聚合等高级功能。这样前端只需和网关交互,无需直接调用后端服务的接口,方便监控,易于认证,减少前端和各微服务交互的繁琐性。
目前引入的网关核心技术是Netflix开源组件zuul,目前zuul的路由配置是在本地配置文件中,对路由配置的增删修改需要对配置文件修改并且进行发布,系统才能生效;此外,前端请求zuul网关的接口都是Http协议,再由zuul网关转发请求到后端微服务,在zuul架构下,只实现了使用Apache Http Client或Netfilx Ribbon请求微服务,这些不能满足我们的需求,后端微服务存在着各种接口协议,如公司的远程服务框架(RSF)、webservice接口、socket接口等等,这样就会导致zuul网关路由转发的前端请求无法调用后端微服务。
发明内容
本发明的主要目的是提出一种基于zuul网关的路由转发方法、装置及系统,实现网关动态配置路由的同时,由网关对前端请求进行协议转换以便调用后端微服务。
为实现上述目的,本发明提出以下技术方案:
第一方面提供一种基于zuul网关的路由转发方法,所述方法包括:
网关动态获取存储在外部数据库中的路由配置信息并刷新路由配置;
所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
所述网关调用所述对应的后端服务接口对转换后的前端请求进行处理。
所述方法还包括:
所述网关在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口;
若是,则所述网关根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功。
所述方法还包括:
网关判断单位时间内异常次数是否大于路由配置中的预设值,是,则网关停止向后端服务重发调用请求并向前端返回调用失败。
所述路由配置包括:
请求网关的地址;
后端服务接口名称及对应的地址;
后端服务接口协议类型;
异常重发开关设置;
异常重发次数设置;
网关路由开启开关设置;
请求网关鉴权校验开关设置。
所述网关在获取所述前端请求后,调用所述后端服务接口前,所述方法还包括:
所述网关判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则所述网关对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息。
所述路由配置信息由用户通过数据库对外接口动态输入设置。
本申请第二方面提供一种基于zuul网关的路由转发装置,所述装置包括:
路由配置单元,用于动态获取存储在外部数据库中的路由配置信息并刷新路由配置,所述路由配置包括后端服务接口协议类型;
协议转换单元,用于获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
调用单元,用于调用所述对应的后端服务接口对转换后的前端请求进行处理。
还包括:
异常重发单元,在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口,若是,则所述异常重发单元根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功;
所述路由配置还包括异常重发开关设置,异常重发次数设置。
还包括:
鉴权校验单元,用于完成如下功能:
在获取所述前端请求后,调用所述后端服务接口前,判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息;
路由配置还包括:请求网关的地址、后端服务接口名称及对应的地址、网关路由开启开关设置和请求网关鉴权校验开关设置。
本申请第三方面提供一种计算机系统,所述系统包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如上所述的方法。
本发明的技术方案中,通过搭建配置管理中心,将路由配置信息存储在配置管理中心的数据库中,网关通过动态获取配置管理中心数据库中的路由配置信息并刷新路由配置,实现网关动态配置路由,保持高可用性;
所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换,避免前端请求接口协议与后端服务接口协议不一致导致的无法调用后端服务,使前端更加方便简单的调用后端服务。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是本实施例1方法流程图;
图2是本实施例2结构示意图;
图3是计算机系统结构图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术中所述,现系统大多采用前后端分离架构,在前端和后端服务之间加有一层网关,目前引入的网关核心技术是Netflix开源组件zuul,目前zuul的路由配置是在本地配置文件中,对路由配置的增删修改需要对配置文件修改并且进行发布,系统才能生效,当对路由配置进行修改维护时就需要停止网关运行,影响到正常使用;
此外,前端请求zuul网关的接口都是Http协议,再由zuul网关转发请求到后端微服务,在zuul架构下,只实现了使用Apache Http Client或Netfilx Ribbon请求微服务,这些不能满足我们的需求,后端微服务存在着各种接口协议,如公司的远程服务框架(RSF)、webservice接口、socket接口等等,当前端请求的后端微服务所使用的接口协议为rsf接口协议时,前端请求所使用的接口协议为Http协议,由于协议不同,这样就会导致zuul网关路由转发的前端请求无法调用后端微服务,网关的路由转发就会失败。
为此本申请提出了一种基于zuul网关的路由转发方法,当需要对网关的路由配置进行修改维护时,传统的方式是先停止网关运行,对网关的本地配置文件进行修改,再启动网关才能让路由配置生效,影响正常使用,而本申请中网关进行路由转发前可以从数据库中动态获取路由配置信息并刷新路由配置,数据库中的路由配置信息可以根据需求来输入,数据库也可以开放接口给用户,让用户自定义路由配置信息,不用让网关暂停运行就可以完成路由配置的实时刷新。
在前后端接口协议不一致的情况下,为了保证网关路由转发的前端请求可以调用后端微服务,路由配置中设置有后端服务接口协议类型,网关将所述前端请求按照对应的后端服务接口协议进行转换,网关调用对应的后端服务接口对转换后的前端请求进行处理。
网关在运行过程中会出现调用后端服务接口出现异常,这会导致用户体验很差,因此路由配置中设置有异常重发开关设置和异常重发次数设置,在异常重发开关设置为打开时,网关根据路由配置中预设的异常重发次数调用后端服务接口直至调用成功。
网关作为流量的入口,大量请求进入网关,向后端服务发起调用,后端服务不可避免的会产生调用失败(超时或者异常),失败时不能让请求堆积在网关上,网关需要进行熔断以释放资源,因此路由配置中设有预设值,当网关检测到单位时间内异常次数大于预设值时,网关进行熔断。
网关所起到的一个重要作用也就是过滤掉非法请求,进行身份认证和安全识别,负责每一个资源的验证要求,并拒绝那些不符的请求,因此路由配置中设置有请求网关的地址,网关需要验证前端请求地址是否属于路由配置中的地址,从而拒绝不符的请求。
由于前端请求的访问权限不同,网关需要根据实际情况决定是否对前端请求进行鉴权校验,因此路由配置中设置有请求网关鉴权校验开关设置,可以将其设置成开启或关闭,来决定是否对前端请求进行鉴权校验。
综上所述,本申请的实施例1如下:
实施例1
如图1所示所述方法包括:
S11、网关动态获取存储在外部数据库中的路由配置信息并刷新路由配置;
通过搭建配置管理中心,将路由配置信息存储在配置管理中心的数据库中,数据库里存储有路由配置如a、b、c,网关动态获取数据库中的路由配置a、b、c并刷新路由配置,实现网关动态配置路由,达到不停机维护路由配置信息的效果,保持高可用性,配置管理中心提供可视化界面配置功能,使用者可以通过可视化界面对数据库中的路由配置进行修改,也支持批量导入路由配置信息,同时配置管理中心支持权限管理,可开放给不同接入方使用。
S12、所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
由于前端请求网关的接口协议都是Http协议,而后端微服务存在着各种接口协议如rsf接口、webservice接口、socket接口,为此我们的路由配置信息中包括后端服务接口协议类型,如前端请求的后端微服务所使用的接口协议为rsf接口协议,网关接收前端请求后会将前端请求按照rsf接口协议进行转换。
S13、所述网关调用所述对应的后端服务接口对转换后的前端请求进行处理。避免前端请求接口协议与后端服务接口协议不一致导致的无法调用后端服务,使前端更加方便简单的调用后端服务。
网关在调用后端服务接口时会出现调用异常的情况,用户需要重新发送一次前端申请才能再次让网关调用后端服务接口,这会导致用户体验很差,在用户只需要申请一次前端请求的情况下,我们就需要在出现网关调用后端服务异常时,由网关自动异常重发,不断调用后端服务接口直至成功;也有些情况下,网关调用后端服务异常时,并不需要异常重发,网关解决上述问题的方法如下:
所述方法包括:
S14、所述网关在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口;
S15、若是,则所述网关根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功。
网关在检测到调用后端服务接口出现异常时,网关会根据路由配置中的异常重发开关设置进行判断,若是异常重发开关设置为打开,网关会重新调用后端服务接口,并根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功,如异常重发次数设置为100次,当第50次异常重发后成功调用所述后端服务接口,异常重发停止,当第100次异常重发也没有成功调用所述后端服务接口,异常重发也停止;若是异常重发开关设置为关闭,网关就不用进行异常重发。
网关作为流量的入口,大量请求进入网关,向后端服务发起调用,后端服务不可避免的会产生调用失败(超时或者异常),失败时不能让请求堆积在网关上,网关需要进行熔断以释放资源。
所述方法包括:
S16、网关判断单位时间内异常次数是否大于路由配置中的预设值,是,则网关停止向后端服务重发调用请求并向前端返回调用失败。
网关判断转发调用后端服务请求时单位时间内出现的异常次数,或者是单位时间内出现的异常次数占转发请求次数的百分比是否大于路由配置中的预设值,是,则网关进行熔断,不再向后端服务重发调用请求并向前端返回调用失败。如路由配置中预设1分钟内3000异常,当网关1分钟向后端转发调用请求中超过3000个异常,网关进行熔断,停止向后端服务重发调用请求;又或者是预设1分钟内10000次请求中允许的异常次数为3000次,当网关1分钟内向后端转发10000次调用请求中异常次数出现3001次,网关进行熔断,停止向后端服务重发调用请求。
网关由一系列的过滤器组成,每个过滤器做不同的事,按照不同的执行顺序完成路由转发,网关所起到的一个重要作用也就是过滤掉非法请求,进行身份认证和安全识别,负责每一个资源的验证要求,并拒绝那些不符的请求。
所述路由配置包括:
请求网关的地址;
网关在接收前端请求后会判断前端请求的地址是否在路由配置中的请求网关地址内,路由配置中的请求网关地址是所有合法请求地址的集合,前端请求的地址对应于路由配置中的请求网关地址中的一个,就说明前端请求的地址是合法请求地址,网关进行下一步,如果不对应,说明前端请求的地址不合法,网关直接返回调用失败。
后端服务接口名称及对应的地址;
路由配置中预设有后端服务接口名称及对应的地址,以便网关调用后端服务接口时对应。
后端服务接口协议类型;
网关接收前端请求后会将前端请求按照调用的后端服务接口协议进行转换,以便于网关能调用后端服务接口对转换后的前端请求进行处理,如前端请求的后端微服务所使用的接口协议为rsf接口协议,网关接收前端请求后会将前端请求按照rsf接口协议进行转换,以使后端微服务可以被转换后的前端请求所调用。
异常重发开关设置;
异常重发次数设置;
异常重发开关设置可以根据需要设置成开启或关闭,当异常重发开关设置为关闭时,网关不进行异常重发,当异常重发开关设置为开启时,网关按照异常重发次数进行异常重发直至调用后端服务接口成功,如异常重发次数设置为100次,当第50次异常重发后成功调用所述后端服务接口,异常重发停止,当第100次异常重发也没有成功调用所述后端服务接口,异常重发也停止。
网关路由开启开关设置;
可以根据实际情况来对网关路由开启状况进行设置,不需要使用时,将网关路由开启开关设置为关闭,使用时,将网关路由开启开关设置为开启。
请求网关鉴权校验开关设置;
由于前端请求的访问权限不同,当网关接收到前端请求时,如果请求网关鉴权校验开关设置为开启,则网关需要对请求进行鉴权校验,判断前端请求的访问权限再决定是否转发调用后端服务请求,校验失败直接返回前端接口调用失败;如果请求网关鉴权校验开关设置为关闭,则网关无需对请求进行鉴权校验。
所述网关在获取所述前端请求后,调用所述后端服务接口前,所述方法还包括:
所述网关判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则所述网关对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息。
所述路由配置信息由用户通过数据库对外接口动态输入设置。
用户可以使用配置管理中心的可视化界面对数据库中的路由配置信息进行修改。
实施例2
对应上述方法,本申请实施例2提供一种基于网关的路由转发装置,如图2所示,所述装置包括:
路由配置单元20,用于动态获取存储在外部数据库30中的路由配置信息并刷新路由配置,所述路由配置包括后端服务接口协议类型;外部数据库30中存储有路由配置信息,路由配置单元20获取路由配置信息并刷新路由配置,实现网关动态配置路由。
协议转换单元21,用于获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
调用单元22,用于调用所述对应的后端服务接口对转换后的前端请求进行处理。
进一步地,还包括:
异常重发单元23,在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口,若是,则所述异常重发单元23根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功;
所述路由配置还包括异常重发开关设置和异常重发次数设置。
如果异常重发开关设置为开启,异常重发单元23会按照异常重发次数设置中的异常重发次数进行异常重发直至调用后端服务接口成功,如异常重发次数设置为100次,当第50次异常重发后成功调用所述后端服务接口,异常重发停止,当第100次异常重发也没有成功调用所述后端服务接口,异常重发也停止;如果异常重发开关设置为关闭,异常重发单元23在调用后端服务接口失败时,不用进行异常重发。
进一步地,还包括:
鉴权校验单元24,用于完成如下功能:
在获取所述前端请求后,调用所述后端服务接口前,判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息;
路由配置还包括:请求网关的地址、后端服务接口名称及对应的地址、网关路由开启开关设置和请求网关鉴权校验开关设置。
请求网关地址;
鉴权校验单元24在接收前端请求后会判断前端请求的地址是否在路由配置中的请求网关地址内,路由配置中的请求网关地址是所有合法请求地址的集合,前端请求的地址对应于路由配置中的请求网关地址中的一个,就说明前端请求的地址是合法请求地址,鉴权校验单元24进行下一步,如果不对应,说明前端请求的地址不合法,鉴权校验单元24直接返回调用失败。
后端服务接口名称及对应的地址;
网关路由开启开关设置;
可以根据实际情况来对网关路由开启状况进行设置,不需要使用时,将网关路由开启开关设置为关闭,使用时,将网关路由开启开关设置为开启。
请求网关鉴权校验开关设置。
由于前端请求的访问权限不同,当鉴权校验单元24接收到前端请求时,如果请求网关鉴权校验开关设置为开启,则鉴权校验单元24需要对请求进行鉴权校验,判断前端请求的访问权限再决定是否转发调用后端服务请求,校验失败直接返回前端接口调用失败;如果请求网关鉴权校验开关设置为关闭,则鉴权校验单元24无需对请求进行鉴权校验。
实施例3
对应上述方法和装置,如图3所示,本申请实施例3提供一种计算机系统,包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行实施例一的方法步骤,如执行以下操作:
网关动态获取存储在外部数据库中的路由配置信息并刷新路由配置;
所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
所述网关调用所述对应的后端服务接口对转换后的前端请求进行处理。
其中,图3示例性的展示出了计算机系统的架构,具体可以包括处理器1510,视频显示适配器1511,磁盘驱动器1512,输入/输出接口1513,网络接口1514,以及存储器1520。上述处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520之间可以通过通信总线1530进行通信连接。
其中,处理器1510可以采用通用的CPU(Central Processing Unit,中央处理器)、微处理器、应用专用集成电路(Application Specific Integrated Circuit,ASIC)、或者一个或多个集成电路等方式实现,用于执行相关程序,以实现本申请所提供的技术方案。
存储器1520可以采用ROM(Read Only Memory,只读存储器)、RAM(Random AccessMemory,随机存取存储器)、静态存储设备,动态存储设备等形式实现。存储器1520可以存储用于控制计算机系统1500运行的操作系统1521,用于控制计算机系统1500的低级别操作的基本输入输出系统(BIOS)。
另外,还可以存储网页浏览器1523,数据存储管理系统1524,以及图标字体处理系统1525等等。上述图标字体处理系统1525就可以是本申请实施例中具体实现前述各步骤操作的应用程序。
总之,在通过软件或者固件来实现本申请所提供的技术方案时,相关的程序代码保存在存储器1520中,并由处理器1510来调用执行。
输入/输出接口1513用于连接输入/输出模块,以实现信息输入及输出。输入输出/模块可以作为组件配置在设备中(图中未示出),也可以外接于设备以提供相应功能。其中输入设备可以包括键盘、鼠标、触摸屏、麦克风、各类传感器等,输出设备可以包括显示器、扬声器、振动器、指示灯等。
网络接口1514用于连接通信模块(图中未示出),以实现本设备与其他设备的通信交互。其中通信模块可以通过有线方式(例如USB、网线等)实现通信,也可以通过无线方式(例如移动网络、WIFI、蓝牙等)实现通信。
总线1530包括一通路,在设备的各个组件(例如处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,与存储器1520)之间传输信息。
另外,该计算机系统1500还可以从虚拟资源对象领取条件信息数据库1541中获得具体领取条件的信息,以用于进行条件判断,等等。
需要说明的是,尽管上述设备仅示出了处理器1510、视频显示适配器1511、磁盘驱动器1512、输入/输出接口1513、网络接口1514,存储器1520,总线1530等,但是在具体实施过程中,该设备还可以包括实现正常运行所必需的其他组件。此外,本领域的技术人员可以理解的是,上述设备中也可以仅包含实现本申请方案所必需的组件,而不必包含图中所示的全部组件。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,云服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上对本申请所提供的方法、装置及系统,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种基于zuul网关的路由转发方法,其特征在于,所述方法包括:
网关动态获取存储在外部数据库中的路由配置信息并刷新路由配置;
所述网关获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
所述网关调用所述对应的后端服务接口对转换后的前端请求进行处理。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
所述网关在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口;
若是,则所述网关根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功。
3.如权利要求1或2所述的方法,其特征在于,所述方法还包括:
网关判断单位时间内异常次数是否大于路由配置中的预设值,是,则网关停止向后端服务重发调用请求并向前端返回调用失败。
4.如权利要求1所述的方法,其特征在于,所述路由配置包括:
请求网关的地址;
后端服务接口名称及对应的地址;
后端服务接口协议类型;
异常重发开关设置;
异常重发次数设置;
网关路由开启开关设置;
请求网关鉴权校验开关设置。
5.如权利要求4所述的方法,其特征在于,所述网关在获取所述前端请求后,调用所述后端服务接口前,所述方法还包括:
所述网关判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则所述网关继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则所述网关对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息。
6.如权利要求1所述的方法,其特征在于:所述路由配置信息由用户通过数据库对外接口动态输入设置。
7.一种基于zuul网关的路由转发装置,其特征在于,所述装置包括:
路由配置单元,用于动态获取存储在外部数据库中的路由配置信息并刷新路由配置,所述路由配置包括后端服务接口协议类型;
协议转换单元,用于获取前端请求并根据所述前端请求对应的后端服务接口以及所述路由配置中的后端服务接口协议类型将所述前端请求按照对应的后端服务接口协议进行转换;
调用单元,用于调用所述对应的后端服务接口对转换后的前端请求进行处理。
8.如权利要求7所述的装置,其特征在于,还包括:
异常重发单元,在检测到调用所述后端服务接口出现异常时,根据所述路由配置判断是否要重新调用所述后端服务接口,若是,则所述异常重发单元根据路由配置中预设的异常重发次数调用所述后端服务接口直至调用成功;
所述路由配置还包括异常重发开关设置和异常重发次数设置。
9.如权利要求7所述的装置,其特征在于,还包括:
鉴权校验单元,用于完成如下功能:
在获取所述前端请求后,调用所述后端服务接口前,判断所述前端请求中的请求网关的地址是否在路由配置中;
若否,则直接向前端返回调用失败信息;
若是,则继续判断所述前端请求对应的网关路由开启开关设置是否为开启;若否,则直接向前端返回调用失败信息;
若是,则继续判断根据所述前端请求对应的请求网关鉴权校验开关设置是否为开启;
若是,则对所述前端请求进行鉴权校验,并在鉴权校验失败时向所述前端返回调用失败信息;
路由配置还包括:请求网关的地址、后端服务接口名称及对应的地址、网关路由开启开关设置和请求网关鉴权校验开关设置。
10.一种计算机系统,其特征在于,所述系统包括:
一个或多个处理器;以及
与所述一个或多个处理器关联的存储器,所述存储器用于存储程序指令,所述程序指令在被所述一个或多个处理器读取执行时,执行如权利要求1-6任一项所述的方法。
CN202010014302.XA 2020-01-07 2020-01-07 基于zuul网关的路由转发方法、装置及系统 Pending CN111181860A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010014302.XA CN111181860A (zh) 2020-01-07 2020-01-07 基于zuul网关的路由转发方法、装置及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010014302.XA CN111181860A (zh) 2020-01-07 2020-01-07 基于zuul网关的路由转发方法、装置及系统

Publications (1)

Publication Number Publication Date
CN111181860A true CN111181860A (zh) 2020-05-19

Family

ID=70656133

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010014302.XA Pending CN111181860A (zh) 2020-01-07 2020-01-07 基于zuul网关的路由转发方法、装置及系统

Country Status (1)

Country Link
CN (1) CN111181860A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111741003A (zh) * 2020-06-23 2020-10-02 四川长虹电器股份有限公司 一种对接第三方平台多协议转换方法和系统
CN112039780A (zh) * 2020-09-01 2020-12-04 浪潮云信息技术股份公司 基于Zuul的持久化动态路由实现方法、电子设备及存储介质
CN112804722A (zh) * 2020-12-31 2021-05-14 浪潮云信息技术股份公司 一种微服务网关动态路由的实现方法
CN113572689A (zh) * 2021-09-24 2021-10-29 深圳市信润富联数字科技有限公司 微服务网关管理方法、系统、设备、可读存储介质及产品
CN113595991A (zh) * 2021-07-07 2021-11-02 河北远东通信系统工程有限公司 一种http接口网关、通信系统及通信方法
CN115150316A (zh) * 2021-03-15 2022-10-04 上海博泰悦臻网络技术服务有限公司 基于动态路由的网关控制方法、装置、介质及网关设备

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146077A1 (zh) * 2015-03-18 2016-09-22 华为技术有限公司 一种动态路由配置方法、装置及系统
CN108900329A (zh) * 2018-06-21 2018-11-27 珠海宏桥高科技有限公司 基于网关基础服务的实时动态转发方法
CN109194604A (zh) * 2018-06-05 2019-01-11 平安科技(深圳)有限公司 接口自动化方法、系统、计算机设备和存储介质
CN109358880A (zh) * 2018-10-18 2019-02-19 行吟信息科技(上海)有限公司 一种通用网关配置方法及装置
CN109617807A (zh) * 2018-12-28 2019-04-12 深圳云天励飞技术有限公司 路由信息更新方法、装置、网关及存储介质
CN109639572A (zh) * 2018-12-06 2019-04-16 网易(杭州)网络有限公司 路由管理方法、装置及微服务系统
CN109672553A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 网关动态配置方法、系统、计算机设备及存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016146077A1 (zh) * 2015-03-18 2016-09-22 华为技术有限公司 一种动态路由配置方法、装置及系统
CN109194604A (zh) * 2018-06-05 2019-01-11 平安科技(深圳)有限公司 接口自动化方法、系统、计算机设备和存储介质
CN108900329A (zh) * 2018-06-21 2018-11-27 珠海宏桥高科技有限公司 基于网关基础服务的实时动态转发方法
CN109358880A (zh) * 2018-10-18 2019-02-19 行吟信息科技(上海)有限公司 一种通用网关配置方法及装置
CN109672553A (zh) * 2018-10-23 2019-04-23 平安科技(深圳)有限公司 网关动态配置方法、系统、计算机设备及存储介质
CN109639572A (zh) * 2018-12-06 2019-04-16 网易(杭州)网络有限公司 路由管理方法、装置及微服务系统
CN109617807A (zh) * 2018-12-28 2019-04-12 深圳云天励飞技术有限公司 路由信息更新方法、装置、网关及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
無痕剑: "SpringCloud微服务Zuul网关动态路由", 《CSDN(URL: HTTPS://BLOG.CSDN.NET/QQ_20112609/ARTICLE/DETAILS/84539747)》 *
赵毅等: "恒丰银行分布式核心系统-API网关技术原型落地实践", 《中国金融电脑》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111741003A (zh) * 2020-06-23 2020-10-02 四川长虹电器股份有限公司 一种对接第三方平台多协议转换方法和系统
CN112039780A (zh) * 2020-09-01 2020-12-04 浪潮云信息技术股份公司 基于Zuul的持久化动态路由实现方法、电子设备及存储介质
CN112804722A (zh) * 2020-12-31 2021-05-14 浪潮云信息技术股份公司 一种微服务网关动态路由的实现方法
CN115150316A (zh) * 2021-03-15 2022-10-04 上海博泰悦臻网络技术服务有限公司 基于动态路由的网关控制方法、装置、介质及网关设备
CN113595991A (zh) * 2021-07-07 2021-11-02 河北远东通信系统工程有限公司 一种http接口网关、通信系统及通信方法
CN113572689A (zh) * 2021-09-24 2021-10-29 深圳市信润富联数字科技有限公司 微服务网关管理方法、系统、设备、可读存储介质及产品

Similar Documents

Publication Publication Date Title
CN111181860A (zh) 基于zuul网关的路由转发方法、装置及系统
WO2018120722A1 (zh) 异步接口测试方法、终端、设备、系统及存储介质
US20230105343A1 (en) NF SERVICE CONSUMER RESTART DETECTION USING DIRECT SIGNALING BETWEEN NFs
CN109120684B (zh) 信息化管理方法、装置、esb总线平台以及存储介质
CN112260853B (zh) 容灾切换方法、装置、存储介质及电子设备
CN110933075B (zh) 服务调用方法、装置、电子设备及存储介质
CN111737022B (zh) 一种基于微服务的接口调用方法、系统、设备及介质
CN110888613B (zh) 打印方法、打印装置、打印系统及电子设备
US20150312396A1 (en) System and method for providing additional information to mobile communication terminal during call attempts
CN109034603B (zh) 业务流程执行方法、设备及计算机可读存储介质
WO2014152076A1 (en) Retry and snapshot enabled cross-platform synchronized communication queue
CN112486620A (zh) 跨进程离屏渲染方法、装置、电子设备及存储介质
CN114553601A (zh) 信息校验方法、装置、设备和介质
CN113726943A (zh) 控制方法及电子设备
US10599505B1 (en) Event handling system with escalation suppression
CN112202744B (zh) 一种多系统数据通信方法和装置
CN111343239B (zh) 通信请求处理方法、通信方法、通信请求处理装置以及交易系统
CN111447273A (zh) 云处理系统及基于云处理系统的数据处理方法
CN110166835B (zh) 页面显示方法、装置和存储介质
CN108289056B (zh) 分享动态图表的方法、装置以及计算设备
CN115410580A (zh) 指挥调度系统的语音识别方法、装置、设备及介质
CN109756393B (zh) 信息处理方法、系统、介质和计算设备
CN115348309B (zh) 通讯管理方法及装置
CN114826886B (zh) 一种应用软件容灾方法、装置及电子设备
CN116760741B (zh) 一种数据状态监控方法、装置、设备及介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200519