流量录制工具怎么选?看完这篇文章就懂了

news2024/11/19 3:48:08

流量录制:在不影响用户正常使用的前提下,获取线上用户的真实请求和服务响应结果,将其保存或者转发到目标应用。

采用不同的流量录制手段,可以采集不同传输阶段的流量。

01、流量复制方式

1、基于应用层的复制:

优点:实现简单

  • 可以实现应用内部方法级的流量录制

缺点:

  • 拓展性差,一般支持某种协议

  • 复制从应用层开始,穿过整个协议栈,通常要占用底层的资源

  • 与应用耦合一起,容易对应用造成影响,比如超时

  • 会出现丢包的情况

2、基于数据包的复制

缺点:

  • 复杂,难度大

优点:

  • 不需要穿过整个协议栈,对资源的占用相对较低

  • 理论上支持此协议上的所有应用层协议录制

3、流量回放方式:

  • 在线方式:将复制的流量实时地转发到目标服务上

  • 离线方式:将复制的流量先保存到数据库或文件中,再将处理或筛选后的流量回放到目标服务

02、应用场景

1、为什么当下被广泛应用?

  • 流量复杂,请求构造成本比较高;

  • 业务复杂,业务场景梳理困难,流量配比不真实;

  • 服务复杂,服务调用关系复杂,服务模块多,构成成本高;

2、应用场景有哪些?

压力测试

各大公司进行模块级压测或者全链路压测基本都是采用流量录制的方式,先对录制的流量进行存储,然后对流量进行编辑、过滤后通过压测引擎向被测服务发压

回归测试

传统的接口测试方案,通过部署环境、构造请求、发送请求、结果断言的方式相对目前复杂业务场景来说太单一了,一是构造的请求过于简单,大多是标准的正常的请求,二是环境依赖太多,封闭环境部署困难。所以越来越多的公司项目采用流量回放的方式进行稳定性测试和功能回归测试,结果评定主要依赖指标统计维度和response维度的diff。

问题调试

面对当前节点众多、交互繁杂的微服务架构模式,问题定位太难了。

数据构造

录制的数据进行数据特征分析,聚类场景数据,用于接口测试,当然这个通常指应用层录制的数据。

数据mock

用场景数据进行接口或方法级的mock

Badcase挖掘

总之复杂业务场景下,数据是分析业务场景、构建测试环境、构造测试数据、保证服务质量的宝贵资源。

03、有什么局限性

1、使用局限性

新服务没有线上流量,无法进行复制;

对于复制的流量,可能需要进行筛选,重新流量配比后才能模拟某个场景使用;

录制流量进行回放时,和初始真实场景有变动;

2、安全性

流量录制功能对架构和设计要求较高,否则容易影响线上性能;

流量回放需要设置相关的标识,进行相关的短路、影子苦表处理方式影响线上功能;

注意事项有哪些?

  • 线上服务安全保障:流量复制以不影响线上功能为前提,包括对线上数据、日志的污染;

  • 录制流量染色:对录制流量进行标识,以实现对录制流量的特殊处理,包括写隔离、写短路等;

  • 并发控制:录制流量服务多少要占用服务资源,尤其应用层实现的录制回放功能,需要进行充分的测试评估才能投入使用,并根据实际情况控制并发;

04、录制回放开源项目

如果评价录制回放工具的优劣:

部署的复杂性

使用限制及存在缺陷:比如,必须部署在一个网段

功能拓展:多点录制

流量伸缩:实时在线模式

性能:占用资源 & 是否支持高并发

学习安排上!


学习资源分享

下方这份完整的软件测试视频学习教程已经上传CSDN官方认证的二维码,朋友们如果需要可以自行免费领取 【保证100%免费】

这些资料,对于想进阶【自动化测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助……基础知识、Linux必备、Shell、互联网程序原理、Mysql数据库、抓包工具专题、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试、安全测试等配套学习资源免费分享

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/183746.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux串口调试助手

前言 基于网上资料对相关概念做整理汇总,部分内容引用自文后文章。 在linux下使用串口终端有两个选择: 基于命令行的minicom图形界面的putty(xshell没有linux版本)1 概述 1.1 Linux的串口设备 Linux下的串口和windows不同&…

移动web媒体查询

移动web媒体查询媒体查询媒体查询使用场景-1媒体查询使用场景-2媒体查询使用场景-3Bootstrap栅格系统row 类列偏移列嵌套移动web阶段重点知识媒体查询 使用媒体查询做响应式页面,为Bootstrap 做铺垫。 body {background-color: gray; }/* 大于等于768px 为粉色 */ media (min…

注意力提示

人类的注意力是有限的、有价值和稀缺的资源。 受试者使用非自主性和自主性提示有选择性地引导注意力。前者基于突出性,后者则依赖于意识。 注意力机制与全连接层或者汇聚层的区别源于增加的自主提示。 由于包含了自主性提示,注意力机制与全连接的层或…

MiG Calendar 6.9.3 for Java Crack

将日历功能添加到您的 Java 应用程序。 使用 MiG Calendar,您可以毫不费力地将任何类型的基于时间的可视化添加到您的应用程序中。您可以创建任何东西,从完整的日历应用程序(如 Outlook 或 Apple 的 iCal)到电视节目表或航班信息应…

居家办公 01 - 组网

# 第一步 - 安装虚拟机 vmbox安装:https://www.virtualbox.org/wiki/Downloads # 第二步 - 修改配置 1. 配置虚拟机网络 网卡1:Host-Only,仅主机与虚拟机网络互通 网卡2:NAT,虚拟机访问互联网 2. 配置虚拟机网络 v…

Lazada、速卖通、沃尔玛、eBay等跨境电商平台怎么做好测评自养号?

现在亚马逊平台不仅会将产品和店铺进行排名,还会将进listing行排名,不同的排名有不同的影响因素,接下来跟随大家一起去了解清楚亚马逊影响listing排名的因素是什么? 1、卖家权重 亚马逊卖家权重与亚马逊控制的卖家指标相关&…

大数据技术架构(组件)9——Hive:数学函数

1.4.2、数学函数注意&#xff1a;当传入值为NULL的时候&#xff0c;返回值大多数也是NULL1.4.2.1、abs作用&#xff1a;返回绝对值select abs(-1),abs(1);1.4.2.2、acos-->从Hive0.13.0作用&#xff1a;如果 -1<a<1 或 NULL&#xff0c;则返回 a 的反余弦值。select a…

[MySQL]-主从同步实战-系统OOM

[MySQL]-主从同步实战-系统OOM 森格 | 2023年1月 本文主要描述了在主从同步过程中&#xff0c;主库非人为重启导致的主从瞬间中断情况的排查及解决。 文章目录[MySQL]-主从同步实战-系统OOM一、问题发现1.1 背景1.2 问题发现二、问题分析2.1 MySQL日志2.2 系统日志三、问题解决…

DocuWare 文档管理软件在金融行业成功案例分享

DocuWare 文档管理软件在金融行业成功案例分享 公司&#xff1a;Advantage Credit, Inc. 国家&#xff1a;美国 行业&#xff1a;金融 部门&#xff1a;财务部门 、人力资源部门 、质量合规管理部门 部署方式&#xff1a;云 成效&#xff1a;信用报告业务从基于办公室的业务模…

RobotStudio教程:ABB机器人拆垛与码垛应用示教编程与虚拟仿真

目录 任务描述 机器人拆垛与码垛工作站创建 机器人拆垛与码垛工作流程分析 机器人位置偏移函数介绍 机器人拆垛与码垛应用示教编程 机器人拆垛与码垛虚拟仿真 任务描述 在RobotStudio软件中创建ABB机器人拆垛与码垛工作站&#xff0c;并示教机器人拆垛与码垛程序&#x…

mysql与redis数据一致性问题相关面试题

1、mysql 与 redis 如何保证数据一致性问题 1. 更新 mysql 数据&#xff0c;在手动清除 Redis 缓存 &#xff0c;在重新查询最新的数据同步到Redis 中 伪代码&#xff1a; 判断如果 redis 是为空的 则读取 mysql 同步到 redis 中 setRedis(key&#xff0c;mysql 数据) 2.更新…

法律常识(二)婚姻法解读

目录 参考 &#xff3b;重婚&#xff3d;禁止有配偶者与他人同居 &#xff3b;有配偶者与他人同居&#xff3d; &#xff3b;家庭暴力&#xff3d; 实践中对于借婚姻索取财物一般如何处理&#xff1f; 索要“彩礼”是否是婚姻法所禁止的行为&#xff1f; 实践中因夫妻一方…

【GD32F427开发板试用】多路ADC规则组同时采样 DMA进行传输数据 顺带开启FPU浮点运算

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;Hello_eQN7e7 前言 开启浮点运算 加快浮点类型数据计算使用GD32F427V-START开发板的ADC1采样四路电路使用DMA1进行数据实时搬运至内存读出数据…

Spark RDD 转换算子

文章目录Spark RDD 转换算子一、Value 类型1、map (映射)2、 mapPartitions (map优化缓冲流)(1&#xff09;函数说明(2) 代码示例(2&#xff09;小案例获取每个分区的最大值3、 map 和 mapParitions 的区别4、 mapParitionsWithIndex(1) 小案例只获取第二个分区的最大值(2&…

开工干活累了,晚上不得找个陪玩打打游戏?我教你们用python找个人美声甜的

序言 好兄弟们&#xff0c;陪玩大家多少都知道亿点吧&#xff01; 漂亮妹妹超级多&#xff0c;长得又好看&#xff0c;还会萝莉音御姐音&#xff0c;滋溜~ 就是说&#xff0c;今天来带咱们来爬爬陪玩的数据&#xff0c;一起看看行情咋样~ 工欲善其事&#xff0c;必先利其器…

使用CyberController来将旧手机改造成电脑外挂

这个是我在哔哩哔哩中发现的感觉比较实用在这里发表一下使用过程中的问题和见解 原作者视频旧手机改电脑外挂-效率或将“提升300%&#xff1f;”_哔哩哔哩_bilibili 参考视频旧手机改电脑外挂&#xff0c;简陋的参考视频_手机游戏热门视频 (bilibili.com) 感谢这两位博主 这个是…

Java十大经典排序算法

目录1. 插入类排序1.1 直接插入排序1.2 希尔排序2. 选择类排序2.1 直接选择排序2.2 堆排序3. 交换类排序3.1 冒泡排序3.2 快速排序&#xff08;递归&#xff09;3.2.1 快排的优化3.3 快速排序&#xff08;非递归——栈&#xff09;4. 归并类排序4.1 二路归并排序&#xff08;递…

管理者必备的六大复盘方法工具汇总

无论是对于企业还是个人来说&#xff0c;复盘都是一个能让我们快速成长的方法&#xff0c;尤其是项目经理和PMO&#xff0c;你是带领项目团队的&#xff0c;每一次项目的完成&#xff0c;都有很多经验&#xff0c;俗话说&#xff0c;最大的浪费是经验的浪费&#xff01;复盘的作…

基础IO-文件操作函数,文件描述符,理解缓冲区

文章目录基础IO回顾c语言的文件操作函数操作系统的文件操作函数open—打开文件write—写入文件read—读文件内容感性现象理解文件文件描述符fd文件描述符的分配规则重定向重定向函数dup2输出重定向追加重定向输入重定向再次理解文件理解缓冲区感性理解缓冲区缓冲区刷新策略写一…

新的一年,建议尝试下这7个JavaScript 库

常言道“你不必重新发明轮子”。第三方库它可以帮助您以简单的方式编写复杂且耗时的功能&#xff0c;一个好的项目应当使用一些优秀的库&#xff0c;下面我推荐下&#xff0c;在你的下个项目中&#xff0c;建议用上这7 个有用的库。1、Video.jsVideo.js 是一个基于 HTML5 的视频…