[发明专利]流量回放方法和系统在审
| 申请号: | 202010444014.8 | 申请日: | 2020-05-22 |
| 公开(公告)号: | CN111625452A | 公开(公告)日: | 2020-09-04 |
| 发明(设计)人: | 沈佳伟;贾艳祥 | 申请(专利权)人: | 上海哔哩哔哩科技有限公司 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36;H04L12/26 |
| 代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 王勇;邓小玲 |
| 地址: | 200433 上海市*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 流量 回放 方法 系统 | ||
本申请实施例提供了一种流量回放方法,所述方法包括:录制目标服务的数据流量以得到录制流量;其中,所述录制流量包括多个调用链路对应的多组调用链路数据,每组调用链路数据包括相应的调用链路中的多个调用事件对应的多组调用数据;及将所述录制流量推送至回放计算机设备,以通过所述回放计算机设备将所述录制流量用于流量回放。本实施例提供的录制流量,由于提供了整个调用链路的各个调用事件的调用数据,使得在测试环境中对目标服务进行测试时,并不需要与生产环境相同的配套设备,有效减少了测试环境中的目标服务所需的各种外部架构、各种设备间交互和测试成本。
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种流量回放方法、系统、计算机设备及计算机可读存储介质。
背景技术
随着互联网行业的业务规模不断扩大,系统设计也越来越复杂。在业务复杂度的系统上进行业务快速迭代时,对系统的鲁棒性、兼容性、测试覆盖率以及实效性也提出了更高的要求。人人往往通过更多的自动化回归脚本和人工编写的脚本,来适应这种要求。但是,由于系统每时每刻都在演化,自动化回归脚本的正确性和实效性很难得到保证,同时人工编写的脚本不能有效地覆盖大量的真实业务场景。
为了减缓复杂度之熵对系统迭代造成的影响,通常需要采用流量回放技术来保障在业务场景、服务架构复杂下的系统测试,将线上真实的数据流转化为覆盖全面的回归测试用例。流量回放技术,是指对生产环境下的业务流量执行录制,并将录制后的业务流量用于在生产环境或测试环境中进行回放的一种测试技术。
在现有技术中,当需要对某个服务在测试环境中进行测试时,测试环境中的配套设备和生产环境中的配套设备需要对应一致,从而造成测试环境下的服务架构复杂、设备间交互复杂、测试成本高昂的问题。
发明内容
本申请实施例的目的是提供一种流量回放方法、系统、计算机设备及计算机可读存储介质,用于解决以下问题:当需要对某个服务在测试环境中进行测试时,测试环境中的配套设备和生产环境中的配套设备需要对应一致,从而造成测试环境下的服务架构复杂、设备间交互复杂、测试成本高昂的问题。
本申请实施例提供了一种流量回放方法,所述方法包括:录制目标服务的数据流量以得到录制流量;其中,所述录制流量包括多个调用链路对应的多组调用链路数据,每组调用链路数据包括相应的调用链路中的多个调用事件对应的多组调用数据;及将所述录制流量推送至回放计算机设备,以通过所述回放计算机设备将所述录制流量用于流量回放。
可选的,每组调用数据包括:(1)相应的调用事件中的交互数据;(2)调用链路标识,用于表示所述相应的调用事件所对应的调用链路;(3)调用编号,用于表示所述相应的调用事件在所述对应的调用链路中的调用顺序;(4)调用链路入口数据,用于表示所述相应的调用事件的调用入口。
可选的,还包括:获取每个调用链路中各个调用事件对应的调用编号,包括:通过Trace传递组件获取计数器并通过所述计数器进行计数操作;及根据计数结果确定各个调用事件的调用编号;其中,所述计数器为基于Trace的计数器并被预先存储在全局ConcurrentHashMap中。
可选的,录制目标服务的数据流量以得到录制流量,包括:根据调用入口,将AOP代理拦截器注入到所述目标服务中;及通过所述AOP代理拦截器进行AOP拦截操作,以获取所述目标服务在各个调用事件中的交互数据。
可选的,所述调用入口包括DB入口、Redis入口和Feign入口。
可选的,所述AOP代理拦截器为继承JVM Sandbox并用于流量录制的增强代码。
可选的,每组调用数据是经过JSON序列化得到的包括元数据的字符串。
可选的,将所述录制流量推送至回放计算机设备,包括:通过限容队列将所述录制流量转发至Kafka中,以便所述Kafka推送所述录制流量至所述回放计算机设备中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海哔哩哔哩科技有限公司,未经上海哔哩哔哩科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010444014.8/2.html,转载请声明来源钻瓜专利网。





