首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

流量录制回放,不是银弹!

前几天在技术交流群,大家又讨论起了流量录制回放的话题。...我无法完全赞成或者反对这两种观点,只能结合自己的一些实践经验和看到过的案例,谈谈我对流量录制回放的看法。 什么是流量录制回放?...流量录制回放,就是通过录制线上的真实流量,然后在测试或者生产环境模拟请求进行验证的一种技术方法。...技术落地要考虑的因素 最后分享一些我个人实践流量录制回放时的经验总结,大家避免踩坑。 流量录制回放技术,更适合复杂业务+复杂系统架构+高并发高性能的系统。...流量录制回放并不能直接发现多少线上问题,相比于投入巨额成本和时间去落地流量录制回放,还不如在这几个领域多投入:捋清需求、编码规范、项目管理、分支和环境管理。

77810
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    1.8 Star的Go流量录制回放工具,录制线上真实请求流量进行回放测试

    一、简介 Sharingan是一个基于golang的流量录制回放工具,录制线上真实请求流量进行回放测试,适合项目重构、回归测试等。...「幻术能力」 1.3、特性 支持下游流量录制。相比tcpcopy、goreplay等方案,回放不依赖下游环境。 支持并发流量录制和回放。录制对服务影响小,回放速度更快。...# 内置提前录制好的3条example示例流量 2.2、接入文档 录制接入文档 「先录制」 回放接入文档 「后回放」 三、技术方案 3.1、模块划分 recorder: 流量录制模块...,录制流量本地文件存储、发送流量录制agent等。...recorder-agent:流量录制agent,单独进程启动,控制录制比例、流量存储等。 replayer: 流量回放模块,重定向连接到Mock Server、Mock时间、添加流量标识等。

    2.3K21

    订单流量录制与回放探索实践

    1.背景介绍1.1 得物 pandora 介绍什么是流量录制回放?...流量录制回放是应用端通过挂载注入录制器探针自动注册到服务端形成录制流量回流,将所有外部调用依赖的响应内容(如数据库、分布式缓存、外部服务响应等)进行完整记录。由平台向回放器分发流量回放指令。...首先,从沙箱挂载到接口配置再到流量录制这一套流程下来,也需要较长的时间才能达到较高的用例覆盖,对于一些边界极端场景还是需要手工设计;其次,流量录制回放是后置的回归兜底,更侧重于对历史逻辑的回归验证。...3.3 面临的挑战3.3.1 排错的效率录制流量后对流量进行回放,发现回放结果比对失败的很多。...我们对流量录制回放的实践还处于起步的阶段,一些问题的解法也在探索中 。

    1.1K30

    订单流量录制与回放探索实践

    1.背景介绍 1.1 得物pandora介绍 什么是流量录制回放?...流量录制回放是应用端通过挂载注入录制器探针自动注册到服务端形成录制流量回流,将所有外部调用依赖的响应内容(如数据库、分布式缓存、外部服务响应等)进行完整记录。由平台向回放器分发流量回放指令。...首先,从沙箱挂载到接口配置再到流量录制这一套流程下来,也需要较长的时间才能达到较高的用例覆盖,对于一些边界极端场景还是需要手工设计;其次,流量录制回放是后置的回归兜底,更侧重于对历史逻辑的回归验证。...3.3 面临的挑战 3.3.1 排错的效率 录制流量后对流量进行回放,发现回放结果比对失败的很多。...我们对流量录制回放的实践还处于起步的阶段,一些问题的解法也在探索中 。

    1.1K40

    一、为什么要使用流量录制与回放?

    因此,对于流量录制回放,我们进行了一些更加深入的探索和落地,也就是我们的月光宝盒平台。 二、什么是流量录制与回放? 在介绍具体实践之前,先简单介绍一下什么是流量录制与回放?...流量录制回放是通过复制线上真实流量录制)然后在测试环境进行模拟请求(回放)验证代码逻辑正确性。通过采集线上流量在测试环境回放逐一对比每个子调用差异和入口调用结果来发现接口代码是否存在问题。...上述的执行流程允许用户仅凭在控制台配置少量信息就能完成复杂的流量录制与回放功能,下面我们将对录制与回放的详细过程进行说明。 3.3 流量录制过程 下面是一个流量录制的过程。...这是因为在完成一条接口流量录制前,录制到的所有数据都在内存中,流量或者子调用一旦过大便容易导致频繁Full GC。另外还有一些高并发系统接口比较多,同时录制多个高并发接口存在性能压力。...通过这种机制在一些场景大幅度减少了录制流量数量,提高了流量的使用效率。 3.4 流量回放过程 下图是流量回放的过程。

    4.9K21

    流量录制与回放在vivo的落地实践

    在介绍具体实践之前,先简单介绍一下什么是流量录制与回放? 流量录制回放是通过复制线上真实流量录制)然后在测试环境进行模拟请求(回放)验证代码逻辑正确性。...3.3 流量录制过程 下面是一个流量录制的过程。一条流量的调用链路包括入口调用和若干次子调用,流量录制过程就是把入口调用和子调用通过一个唯一ID绑定成一次完整的调用记录。...这是因为在完成一条接口流量录制前,录制到的所有数据都在内存中,流量或者子调用一旦过大便容易导致频繁Full GC。另外还有一些高并发系统接口比较多,同时录制多个高并发接口存在性能压力。...目前的方案是根据流量入参和执行调用栈作去重操作。在录制时,Agent会根据去重配置信息进行流量去重操作,保证入库的流量数据是唯一的。...通过这种机制在一些场景大幅度减少了录制流量数量,提高了流量的使用效率。 3.4 流量回放过程 下图是流量回放的过程。

    1.8K40

    如何通过GoReplay进行线上流量录制与回放

    GoReplay简介 GoReplay是一款开源的用来进行http流量录制与回放的工具,因此可以通过它来进行线上真实流量录制然后将录制流量回放到测试环境用来确认新开发的功能是否有问题,这样可以极大的提高新功能发布的信心...执行下如下命令,录制80端口的包,输出到控制台,测试下是否可以录制流量 sudo ....流量回放验证 GoReplay既支持实时回放也支持先录制下来后续回放,我们先用后一种方式来验证下是否可成功回放。执行如下命令将录制的80端口的流量存到文件 sudo ....这样就可以说明回放的流量确实导到测试环境的81端口了,至此流量录制与回放已都验证可行。...其他常用支持功能 追踪原始IP 通过上面的流量录制方式,流量播放抓包是可以发现是没办法看到原始流量的IP的,可以通过录制的时候添加--input-raw-realip-header "X-Real-IP

    7K20

    【干货】流量录制回放工具:JVM-sandbox-repeater!

    在软件开发和测试过程中,我们经常会遇到需要对网络请求进行录制和回放的需求,以便进行调试、测试和分析。为了模拟真实的用户请求,我们通常会使用各种流量录制回放工具来记录并重放网络请求。...其中,jvm-sandbox-repeater 是一款功能强大的流量录制回放工具,可以帮助我们轻松实现对网络请求的录制和回放。...它是利用JVM Sandbox的字节码增强技术,对Java应用进行无侵入式的流量录制和回放。...通过录制功能,获取目标应用程序的实际网络请求数据,用于后续的分析和调试。 流量回放:jvm-sandbox-repeater 支持对录制的网络请求进行回放。...性能测试:利用录制流量数据进行性能测试,能够更真实地反映系统的性能表现,帮助发现和解决性能瓶颈。 兼容性测试:通过在不同版本的Java应用或不同环境下回放录制流量,可以验证系统的兼容性。

    23510

    CCTech:自研流量录制回放平台介绍01(文末留言)

    背景介绍 关于流量录制回放目前是一个比较火的方向,也看过一些测试开发团队在关于流量录制回放的一些文章介绍以及案例,多数还是在现有开源工具的基础上做的一些贴合各自团队业务方向的二次开发,如:go replay...录制域名:用于该项目下所有录制任务的流量域名级别过滤,默认为空,即录制所有host的流量......:在创建录制任务时选择代理录制;代理录制开启时,会自动选择配置范围内的一个端口开启代理服务器,点击查看流量即可看到代理的IP和端口号;然后点击查看流量进入到录制页面。...安装完成后,即可进行正常的测试流量录制了......ES模式录制:在创建录制任务时选择ES录制;ES录制分三个环境,对应三个不同环境的流量;开启ES录制后,录制任务会定时从不同环境的ES日志中捞取时间间隔内的流量并进行记录... 6.4 回放管理 回放管理包含三个类功能

    1.7K21

    拨开流量录制回放从基建到业务落地的迷雾

    Magic 流量录制回放产品,从回归验证、覆盖率收集、流量复用等多个手段来赋能研发效能质量。...流量录制回放很大程度上能解决这些问题。 接下来,我们从底层基建建设到核心业务场景落地两方面跟大家分享下众安科技在流量录制回放平台的建设实践。...技术方案 整体架构基于录制回放器的主路复制,设定接口采样率、流量分组等策略,应用端通过挂载注入录制器探针自动注册到服务端形成录制流量回流,平台层向回放器分发流量回放指令,这样形成了基本的流量录制回放闭环...图 8:接口级采样率设定 流量脱敏 & 去重 通过以上录制计划的设定和 Agent 探针的基础,我们实际上就可以开启录制开关来录制流量。...图 9:录制流量 然后,从生产录制流量到测试环境回放,我们需要针对某些敏感信息通过脱敏规则进行数据的变形,实现敏感隐私数据的可靠保护。

    91731

    FA8# 流量录制回放功能设计点归纳

    引言 本文对流量录制和回放常见的方案、用途以及设计原理做个归纳整理。...回归特定接口和链路 回归特定业务场景 全量回归特定业务线 2.与全链路压测闭环 解决全链路压测的数据准备问题,通过流量录制和回放系统与压测系统打通,形成从流量录制到压测闭环。...定向录制某个链路接口线上流量录制流量进行压测打标 增压发起全链路压测 3.数据的其他用处 抽取线上流量测试环境调试复现 其他用到线上请求数据的地方 二、常用方案 流量录制的方案和采用技术各种各样,...功能点归纳 录制代理ReplayAgent负责接收控制台指令对GoReplay或sandbox-repeater管控 录制代理上报录制数据流量和监控信息 控制台对流量录制管理 例如:数据完整性、录制任务状态和结果...、录制时间、录制流量过滤 控制台对流量回放管理 例如:回放结果状态、时长设定、回放速度等 控制台与压测平台、回归测试平台的通信

    95810

    国产开源一款流量回放平台产品,无侵入线上流量录制流量回放平台

    不想写接口测试脚本了,我想做一个流量录制系统,把线上用户场景做业务回归,可能会接入很多服务系统,不想让每个系统都进行改造,有好的框架选择吗?...我想做一个业务监控系统,对线上核心接口采样之后做一些业务校验,实时监控业务正确性 Moonbox(月光宝盒)是一个无侵入的线上流量录制流量回放平台,沿用了jvm-sandbox-repeater的SPI...子调用在录制时会记录该方法的入参、返回值;回放时用该返回值进行MOCK MOCK:在回放时,被拦截的子调用不会发生真实调用,利用字节码动态干预能力,将录制时的返回值直接返回 降噪:在回放时,部分回放子调用入参或者回放流量响应结果和原始流量对比不一致字段...,对这些非必要字段进行排除对比过程 功能介绍 流量录制流量录制模板管理,录制任务下发和录制流量查看 流量回放:流量回放任务管理,回放数据查看成功率统计 回放mock:流量录制和回放特殊mock(作为子调用...内部有较多新特性正在开发和使用中,预计会陆续会对外开源,包括 丰富更多的插件 mysql的数据存储 基于c++的流量录制回放 docker化平台部署 用例、场景管理能力 定时录制、回放能力 地址:https

    2K80

    2021第一篇-流量录制回放完整案例

    在之前的《录制回放实现测试用例自由》一文中,笔者简单介绍了如何通过切面来录制HTTP接口请求和返回,并实现了用例的回放。...仅仅对HTTP接口进行录制,而不去控制数据库等依赖进行控制的话,并不能保证录制出来的用例有足够的稳定性。 本文中,我们将进一步实现一个更为完整的解决方案。 ? 录制 在哪里录制?...这样,只要在应用启动,就可以启动录制了。...在原先录制Controller方法的基础上,再叠加对Mapper的拦截,我们就具备了录制请求和(数据库)依赖的能力。...总结 通过上述实践,我们可以按照如下的方式进行测试用例的开发和执行 1)启用录制功能,对应用的请求和依赖进行录制,形成测试用例(文件) 2)将录制的文件作为测试用例来执行(集成测试) 涉及的技术点 @Aspect

    2K30

    录制线上流量做回归测试的正确打开方式

    来源:http://www.51testing.com/  线上流量 什么是录制线上流量回放 ? 为什么需要录制线上流量回放   项目大迭代更新,容易漏测,或者有很多没用评估到的地方。   ...由此可见,想要正确打开线上流量录制回放,需要解决很多问题。   而重中之重,就是 diff。  回放差异 diff   diff 实现对比和去噪 ?   ...缺陷   以上实现的方法总结起来,就是把录制 gor 组件写进 Dockerfile,并在项目运行的时候,实时录制线上流量,转发到测试环境,然后进行 diff 去噪对比。   ...上图是录制流量以后保存的 log 文件,我们可以清楚看到它的结构,所以这是不是意味着,只要我们写出来这份相同格式的 log,我们就能直接凭借这份 log 来回放呢?   对的。   ...录制线上流量做回归测试的正确打开方式   至此,快速构造测试数据,对比前后版本的方案成型,且可根据业务定制脚本,可落地实现,真正意义上地实现回归 diff 测试。

    1.1K71

    FA12# 流量录制回放智能降噪知识点梳理

    引言 已录制流量进行回放,如果回成功率较低,比如20000个请求错误率5%,也有1000个错误, 对开发测试排查成本过高,疲惫抱怨也会增加。...本文降低排查成本提升开发测试效率,侧重在智能降噪这块涉及的知识点进行整理,主要内容有: 常见噪点 智能降噪 文章小结 一、常见噪点 1.时间差异 流量录制和回放时间戳不同,代码中使用该时间戳进行逻辑判断...通过三个版本系统进行流量对比,将其噪声过滤: 候选版本:即待提测上线版本 稳定版本:可以部署线上Master分支 稳定版本副本:可以部署线上Master分支 工作原理: 通过向稳定版本和稳定版本副本回放流量...,对比其流量差异得到【噪声 】 通过向候选版本和稳定版本回放流量,对比其流量差异得到【原始区别 】 再从【原始区别】剔除【噪声】得到最终的diff结果 Diffy的Github的地址: https://...github.com/twitter-archive/diffy 三、文章小结 本文罗列了流量回放中常见的噪音以及解决噪音的常见措施。

    1.2K20
    领券