当前位置:首页 > 报告详情

自研流量回放工具原理及在广告业务的应用实践_李茂森.pdf

上传人: 2*** 编号:148949 2023-12-08 28页 2.44MB

1、自研流量回放工具原理及在广告业务的应用实践分享人:李茂森个人简介姓名:李茂森所在组织:技术中台-质量工程部专业领域:服务端测试目 录010203业务背景及测试挑战自研流量回放工具FlowCopy介绍流量回放在广告业务中的应用04总结与展望业务背景与测试挑战01广告投放系统介绍高并发 亿级PV 万级QPS低时延 处理时间100ms 传输数据量大链路复杂 大型分布式系统 对外为HTTP接口 多模块之间频繁RPC通信广告系统技术特点测试挑战随着系统复杂度的提高,传统自动化测试的弊端凸显高成本人工编写自动化脚本,耗时高需求变动较快,自动化脚本维护成本高自动化脚本质量与QA个人经验和能力强相关覆盖场景有

2、限自动化脚本只覆盖核心场景特殊场景(第三方/模型依赖)覆盖难效率低排查自动化问题效率低,赋能RD效果差自研流量回放工具FlowCopy介绍02流量回放介绍简单来说,流量录制与回放是通过复制线上真实流量(录制),在测试环境进行模拟请求(回放)相对于传统自动化测试,流量回放技术可明显提高测试效率低成本无需人工编写自动化脚本使用工具录制回放流量,维护成本低覆盖场景全面使用真实流量,覆盖大部分场景定制筛选特殊流量,辅助人工测试效率高大量真实请求测试,快速定位问题广告业务测试中的流量录制回放需求现有流量回放工具是否能满足需求广告引擎流量录制回放需求:RPC协议支持流量的录制需要支持多种RPC协议,如Th

3、rift、Brpc等 明文流量录制多数RPC协议为二进制,需要录制为明文流量 C+语言支持尽量的多语言支持,必须能够录制C+相关应用现有流量回放工具介绍业务无侵入,因为intercept的存在,实时导流对线上影响小基本tcp协议栈的协议都可以支持,几乎是目前支持协议最多的流量回放工具基于ip层发送,流量更加真实支持分布式架构,可以当作压测工具使用优点:不足:部署难度大,需要同时部署tcpcopy和intercept,参数较复杂 录制和回放都是基于底层数据包,难以进行流量的筛选和定制安装部署简单、对业务应用无侵入,只占用机器带宽支持过滤和修改流量,可实时转发流量支持回放速率控制,可用于性能测试优

4、点:不足:开源版本只支持HTTP1.1及以下协议 无法解析二进制的数据交互协议,如Protobuf等不仅支持流量回放,还可以扩展到sandbox的其它能力通用的录制/回放能力,多协议支持强大的debug功能,支持内部调用链的追踪优点:不足:只适用于JAVA类应用 有一定上手难度,熟悉JAVA/JVM是否满足需求:是否满足需求:是否满足需求:不满足,不支持C+应用不满足,无法录制明文流量不满足,无法录制RPC协议流量回放的演进之路1.0基于应用层录制2.0基于网络协议栈录制流量回放1.0业务测试中需要明文流量,但现有工具无法支持RPC流量录制背景:1、人工在业务系统中插入代码并编译2、搭建测试环

5、境后,使用tcpcopy等工具在系统入口处回放流量实现方案:1、系统代码变更,需要同步修改编译,维护成本高2、侵入式保存流量,可能影响程序功能3、依赖真实测试环境配置,环境搭建成本高4、测试环境配置会影响流量保存的真实度存在问题流量回放2.0无侵入式保存HTTP/RPC明文脱敏流量,支持千级QPS流量保存/改写FlowCopy架构通过网络协议栈获取流量,无侵入使用epoll多路复用加多线程处理,高性能HTTP/RPC多协议支持,明文脱敏流量存储录制请求流量无需测试环境FlowCopy使用以GRPC接口录制为例:流量录制FLowcopy1、无需手动编译proto文件,运行指定方法名称即可2、无需

6、真实测试环境,以JSON格式存储protobuf请求数据3、支持转发到特定服务,获取相关返回流量1、启动flowcopy,机器ip为192.169.5.3-req_addr=192.162.1.2:8000-port=8000-timeout=1000-method_name=example.personSerivce/sendrequest-output_filename=./dump.json2、启动tcpcopy,目标ip为flowcopy机器iptcpcopy-x 8000-192.169.5.3:8000-s 192.168.5.4-c 192.168.1.x零代码编写、一键录制!参

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要分享了自研流量回放工具FlowCopy在广告业务中的应用实践。作者李茂森,来自技术中台-质量工程部,专业领域为服务端测试。主要内容包括: 1. 广告投放系统介绍:高并发、低时延、链路复杂。测试挑战:传统自动化测试成本高、覆盖场景有限、效率低。 2. 流量回放介绍:流量录制与回放技术可提高测试效率,低成本、全面覆盖场景。与传统自动化测试相比,流量回放技术具有明显优势。 3. FlowCopy工具介绍:支持多种RPC协议、明文流量录制、C++语言支持。对比现有流量回放工具,FlowCopy具有部署简单、支持过滤和修改流量等优点。 4. 流量回放的应用:在广告业务中,流量回放应用于功能测试、性能测试、Diff测试等场景,解决了测试环境中流量保存真实度问题,提高了测试效率。 5. 未来展望:流量回放技术将继续探索云原生方案,降低部署难度,提高功能丰富度,实现流量回放平台化和服务化,推广到更多业务,提升工具ROI。
"流量回放工具如何提高测试效率?" "广告业务中流量录制与回放的应用实践有哪些?" "如何利用流量回放进行性能测试与问题排查?"
客服
商务合作
小程序
服务号
折叠