[发明专利]一种分布式高可用网关系统在审
申请号: | 202010371589.1 | 申请日: | 2020-05-06 |
公开(公告)号: | CN113630310A | 公开(公告)日: | 2021-11-09 |
发明(设计)人: | 李君彦;李玉福 | 申请(专利权)人: | 北京农信互联科技集团有限公司;北京农信互联数据科技有限公司;厦门农芯数字科技有限公司 |
主分类号: | H04L12/66 | 分类号: | H04L12/66;H04L29/06;H04L29/08;G06F11/36;G06F8/20 |
代理公司: | 北京智为时代知识产权代理事务所(普通合伙) 11498 | 代理人: | 王加岭;杨静 |
地址: | 100080 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 可用 网关 系统 | ||
1.一种分布式高可用网关系统,包括后台管理子系统和核心子系统;所述核心子系统接收来自服务请求端的服务请求并路由至后端服务接口;其中所述核心子系统包括安全控制组件、请求校验组件、数据获取组件和结果聚合组件;
所述安全控制组件用于对于服务请求进行安全检验、限流和防刷;
所述请求校验组件用于获取服务请求参数;
所述数据获取组件用于将服务请求路由至后端服务接口;
所述结构聚合组件用于将来自服务端的结果聚合,返回至服务请求端;
所述后台管理子系统和核心子系统均采用分布式系统来实现。
2.根据权利要求1中所述的分布式高可用网关系统,其特征在于,所述请求校验组件通过管道链的方式处理和校验服务请求,将服务请求的多个处理逻辑中的每一个看做一个管道,每个管道按照预先设定的顺序先后执行,将处理或校验后的结果交由下一管道,且其中所述管道链的顺序随服务请求的流程顺序而进行调整。
3.根据权利要求2中所述的分布式高可用网关系统,其特征在于,所述请求校验组件利用以下三种方式中的一种或多种来获取服务请求所携带的用户信息:A获取应用的cookie值,B获取单点登录指定的cookie值,C获取服务请求头信息里预定位置的值;所述请求校验组件获取用户信息后,进行服务请求相关的鉴权和认证。
4.根据权利要求1中所述的分布式高可用网关系统,其特征在于,所述安全控制组件包括一次限流单元和二次限流单元,其中,
所述一次限流单元被设置于Nginx服务器中,所述Nginx服务器接收并转发服务请求,所述一次限流单元限制来自单个服务请求地址在单位时间内的访问量,当所述单个服务请求地址在单位时间内的访问量大于预定阈值时,所述一次限流单元不转发服务请求;
所述二次限流单元使用拦截器记录每个被转发的服务请求的明细数据,将明细数据使用redis缓存,然后获取配置系统中设置的单位时间内同一地址允许的访问量,以及单位时间内的允许访问总量;计算单位时间内的单个地址访问量和单位时间内的请求访问总量;当单位时间内的单个地址访问量超过单位时间内同一地址允许的访问量,或单位时间内的请求访问总量超过单位时间内的允许请求访问总量时,二次限流单元阻截来自所述地址的服务请求,或阻截全部服务请求,直至重新计算后的单位时间内的单个地址访问量小于单位时间内同一地址允许的访问量,或单位时间内的请求访问总量小于单位时间内的允许请求访问总量。
5.根据权利要求4中所述的分布式高可用网关系统,其特征在于,所述核心子系统采用异步方式处理多个服务请求,当多个服务请求中的每一个到达核心子系统后,核心子系统的Nginx服务器对应的线程直接返回,然后使用核心子系统内部其他组件对应的线程来执行服务请求相关操作,等到服务请求有结果返回的时候,再将请求结果返回给服务请求端。
6.根据权利要求1中所述的分布式高可用网关系统,其特征在于,所述后台管理子系统包括接口管理单元和接口发布单元,所述接口管理单元用于查询、新增、修改、下线后端服务接口相关配置;所述接口发布单元用于接收管理员对于新增或修改后端服务接口的审核指令,并将审核指令传递给接口管理单元;所述接口管理单元在本地数据库中存储后端服务接口信息,并通过分布式服务系统中向核心子系统发布后端服务接口更新的标志,所述核心子系统订阅所述系统发布后端服务接口更新的标志后,从后台管理子系统拉取更新后的后端服务接口信息。
7.根据权利要求1中所述的分布式高可用网关系统,其特征在于,所述核心子系统的数据获取组件中包括协议转换单元,所述协议转换单元用于实现服务请求所遵从的协议与业务系统的服务所遵从的协议之间的协调;所述协议转换单元采用泛化调用的方式实现Dubbo协议至超文本传输协议的转换,把Dubbo协议至超文本传输协议都能转换成共同语言从而互相转换;以及利用阿帕奇可扩展交互系统实现超文本传输协议到Dubbo协议的转换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京农信互联科技集团有限公司;北京农信互联数据科技有限公司;厦门农芯数字科技有限公司,未经北京农信互联科技集团有限公司;北京农信互联数据科技有限公司;厦门农芯数字科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010371589.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:蒸汽喷射冷却装置及系统
- 下一篇:一种水下推土机