【技术实现步骤摘要】
基于微服务的网关系统及网关动态路由方法
本专利技术涉及网关路由
,具体地说是一种基于微服务的网关系统及网关动态路由方法。
技术介绍
不同的微服务一般有不同的网络地址,而外部的客户端可能需要调用多个服务的接口才能完成一个业务需求。比如一个电影购票APP,可能会调用电影分类微服务、用户微服务、支付微服务等。如果客户端直接和微服务进行通信,会存在客户端会多次请求不同微服务,增加客户端的复杂性、存在跨域请求,在一定场景下处理相对复杂、认证复杂,每一个服务都需要独立认证等一列问题,此时我们可以借助微服务网关解决。微服务网关是介于客户端和服务器端之间的中间层,所有的外部请求都会先经过微服务网关。同时这也产生了一个新的问题,网关的配置相对复杂,部署初期可能要频繁的修改、调试网关的路由配置,每次配置都需要重启生效,无形中增加了调试和运维的工作量。并且网关流量比较大,大部分是集群部署,节点越多运维的工作量越大。如何高效、灵活的实现网关动态路由,是需要解决的技术问题。
技术实现思路
本专利技术的技术任务是针对以 ...
【技术保护点】
1.基于微服务的网关系统,其特征在于用于实现客户端与服务器端之间网关的动态路由,所述网关系统包括:/n服务网关管理模块,所述服务网关管理模块以管理界面的形式面向管理员,用于支持管理员配置每个服务对应网关路由的基础信息;/n服务网关存储模块,所述服务网关存储模块与服务网关管理模块连接,用于同步存储上述基础信息;/n服务网关接入模块,所述服务网关接入模块与服务网关存储模块连接,用于外接客户端和服务器端并从客户端接收服务请求,用于根据服务请求从服务网关存储模块读取基础信息并同步基础信息,对于集群部署,同步基础信息的同时、用于向服务网关存储模块发送更新事件。/n
【技术特征摘要】
1.基于微服务的网关系统,其特征在于用于实现客户端与服务器端之间网关的动态路由,所述网关系统包括:
服务网关管理模块,所述服务网关管理模块以管理界面的形式面向管理员,用于支持管理员配置每个服务对应网关路由的基础信息;
服务网关存储模块,所述服务网关存储模块与服务网关管理模块连接,用于同步存储上述基础信息;
服务网关接入模块,所述服务网关接入模块与服务网关存储模块连接,用于外接客户端和服务器端并从客户端接收服务请求,用于根据服务请求从服务网关存储模块读取基础信息并同步基础信息,对于集群部署,同步基础信息的同时、用于向服务网关存储模块发送更新事件。
2.根据权利要求1所述的基于微服务的网关系统,其特征在于还包括缓存模块,所述缓存模块连接于服务网关接入模块和服务网关管理模块之间,用于通过服务网关管理访问服务网关存储模块,以获取并存储基础信息;
所述服务网关接入模块接收服务请求后,用于根据服务请求从缓存模块读取基础信息并同步基础信息,对于集群部署,同步基础信息的同时、用于向缓存模块发送更新事件。
3.根据权利要求2所述的基于微服务的网关系统,其特征在于所述缓存模块用于通过服务网关管理访问服务网关存储模块,以获取并存储基础信息,包括如下模式:
模式一,管理员首次配置服务对应网关路由的基础信息后,所述基础信息同步存储于服务网关存储模块;
服务网关接入模块接收服务请求后,首次根据服务请求从缓存模块读取基础信息时,缓存模块通过服务网关管理访问服务网关存储模块,以获取并存储基础信息;
对于已配置基础信息的服务,管理员后续编辑服务对应网关路由的基础信息后,存储于服务网关存储模块以及缓存模块中的对应基础信息均同步更新;
或,模式二,管理员首次配置服务对应网关路由的基础信息后,所述基础信息同步存储于服务网关存储模块、并初始化存储于缓存模块;
对于已配置基础信息的服务,管理员后续编辑服务对应网关路由的基础信息后,存储于服务网关存储模块以及缓存模块中的对应基础信息均同步更新。
4.根据权利要求1、2或3所述的基于微服务的网关系统,其特征在于所述基础信息包括但不限于客户端信息、实例信息、服务信息、路由信息、API信息和权限信息;
所述客户端信息包括但不限于客户端ID,所述服务信息包括但不限于服务名称,所述路由信息包括但不限于路由地址,所述权限信息用于限定客户端对服务的访问权限。
5.基于微...
【专利技术属性】
技术研发人员:付君伟,段其朴,徐金权,
申请(专利权)人:浪潮云信息技术股份公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。