[发明专利]一种API网关流量镜像方法有效

专利信息
申请号: 202210710303.7 申请日: 2022-06-22
公开(公告)号: CN115277602B 公开(公告)日: 2023-07-28
发明(设计)人: 梁永喜 申请(专利权)人: 全知科技(杭州)有限责任公司
主分类号: H04L49/20 分类号: H04L49/20;H04L67/01;H04L67/02;H04L67/56;H04L12/66
代理公司: 杭州奇炬知识产权代理事务所(特殊普通合伙) 33393 代理人: 贺心韬
地址: 310000 浙江省杭州市*** 国省代码: 浙江;33
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 api 网关 流量 方法
【说明书】:

发明实施例公开了一种API网关流量镜像方法,具体涉及API网关流量镜像方法领域,包括以下以下几部分内容:分块数据结构的定义与格式:按照HTTP事件类型,定义HTTP事件请求头、HTTP事件请求体、HTTP事件响应头、HTTP事件响应体等四个部分定义,每个部分都包含有事件唯一ID,用于数据加工时的组装关联,约定两种格式的数据序列化格式。通过尽最大可能性以减少对nginx本身的影响情况下将HTTP事件部分内容尽快尽早地镜像出来,具体是在nginx处理HTTP事件处理的各个阶段,将事件中的局部数据以批处理的转发到消息中间件,再由数据加工模块,将各阶段的数据组装原始的HTTP事件。

技术领域

本发明实施例涉及API网关流量镜像方法领域,具体涉及一种API网关流量镜像方法。

背景技术

将网关代理部署在API服务的前面,将需要观测的流量复制并转发到分析设备中,一般是基于nginx服务+Lua脚本的框架。在log_by_lua的处理阶段中,将所关注的HTTP事件完整内容进行组装(一般为json格式)并复制转发,这意味着在复制转发完成之前,nginx服务器上缓存所有的数据(包括服务器的请求与响应部分),尤其是响应部分,一般都会比较大,而且都保存在内存中,当并发会话较多的时,会占用较高的系统内存资源,进而影响处理性能。

发明内容

为此,本发明实施例提供一种API网关流量镜像方法,通过尽最大可能性以减少对nginx本身的影响情况下将HTTP事件部分内容尽快尽早地镜像出来,具体是在nginx处理HTTP事件处理的各个阶段,将事件中的局部数据以批处理的转发到消息中间件,再由数据加工模块,将各阶段的数据组装原始的HTTP事件。

为了实现上述目的,本发明实施例提供如下技术方案:一种API网关流量镜像方法,包括以下以下几部分内容:

分块数据结构的定义与格式:按照HTTP事件类型,定义HTTP事件请求头、HTTP事件请求体、HTTP事件响应头、HTTP事件响应体等四个部分定义,每个部分都包含有事件唯一ID,用于数据加工时的组装关联,约定两种格式的数据序列化格式,在序列化编码性能上,两者各有优势,可根据实的数据进行动态选择,纯文本类且数据量不太大的数据,json编码性能更好,二进制类的数据,protobuf编码性能更优;

代理核心模块:在access_by_lua阶段、header_filter_by_lua阶段或body_filter_by_lua阶段,可以根据当前HTTP事件的数据量等信息,将HTTP事件数据按照一定的策略进行分块传输;

分块与编码策略:对于访问/下载类型的HTTP事件,第一个消息块数据包含有HTTP事件请求头、HTTP事件请求体、HTTP事件响应头、HTTP事件响应体的部分内容,之后每4KB的HTTP事件响应体数据,将变成一个独立的消息块数据,进行编号后传输;

对于上传类型的HTTP事件,每一个消息块数据包含有HTTP事件请求头、HTTP事件请求体的部分内容,之后每4KB的HTTP事件请求体数据,将变成一个独立的消息块数据,进行编号后传输;

HTTP事件流量镜像还原流程如下:

步骤一:在nginx的access_by_lua阶段,开头生成一个HTTP事件的唯一ID,存储到nginx会话的上下文变量,并将唯一ID;

步骤二:在nginx的access_by_lua阶段,将收到HTTP事件的请求头、请求体数据以及HTTP事件的唯一ID填充到分块数据结构,并发送到内部的批处理队列;

步骤三:在nginx的header_filter_by_lua阶段,将收到HTTP事件的响应头以及HTTP事件的唯一ID填充到分块数据结构,并发送到内部的批处理队列;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于全知科技(杭州)有限责任公司,未经全知科技(杭州)有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202210710303.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top