网站首页 > 博客文章 正文
1.背景
校验系统的正确性和可靠性时,仅靠用例场景无法覆盖全生产环境下的所有场景,需要一套引流工具,在系统正式上线前,用线上的请求测试待上线系统,在正常请求下,是否有报错;在数倍的请求下,系统的性能瓶颈。
GoReplay,原名叫gor,因为其易上手,且功能比较全。GoReplay是在投入生产之前使用真实流量测试用户的应用得最简单和最安全的方式。随着应用程序的增长,测试所需的工作量也呈指数增长。GoReplay为用户提供了重复使用现有流量进行测试的简单想法,能分析和记录应用程序流量,也不会对其造成影响,这消除第三方组件置于关键路径中带来的风险。
GoReplay工作流程:侦听器服务器捕获http流量并将其发送到重放服务器或保存到文件。重播服务器将流量转发给指定的地址。下载链接:http://github.com/buger/goreplay/releases/download/v1.0.0/gor_1.0.0_x64.tar.gz,在linux下载解压直接使用。
2.参数
(1)输入参数
–input-raw 捕获 HTTP 流量,需指定端口号
–input-file 使用 –output-file 记录的文件作为输入
–input-tcp 将多个 Gor 实例获取的流量聚集到一个 Gor 实例
(2)输出参数
–output-http 相应流量的终端,接收 URL 地址
–output-file 将获取的流量记录入文件
–output-tcp 将获取的流量转移至另外的 Gor 实例,与 –input-tcp 组合使用
–output-stdout debug 工具,将流量信息直接输出
(3)请求过滤
–http-allow-url 允许正则 URL,不包含主句名部分
–http-disallow-url 不允许正则 URL
–http-allow-header 允许的 Header 头
–http-disallow-header 不允许的 Header 头
–http-allow-method 允许的请求方法
3.命令
(1)获取经过本地8080端口的请求流量,然后打印出来
[root@localhost ~]# ./gor --input-raw :8080 --output-stdout
(2)获取经过本地8080端口的请求流量,然后保存在.gor文件中
[root@localhost ~]# ./gor --input-raw :8080 --output-file=request.gor
(3)从保存下来的流量文件中提取流量并向某的地址的某个端口输出
[root@localhost ~]# ./gor --input-file=request.gor --output-http="http://localhost:8000"
(4)转发
[root@localhost ~]# ./gor --input-raw :8080 --output-http="http://localhost:8000"
(5)请求过滤
只收集 /api 下的请求
[root@localhost ~]# ./gor --input-raw :8080 --output-http staging.com --http-allow-url /api
只收集请求图中符合 api-version 为 1.0x 的请求
[root@localhost ~]# ./gor --input-raw :8080 --output-http staging.com --http-allow-header api-version:^1\.0\d
使用2倍速度进行回放
[root@localhost ~]# ./gor --input-file "requests.gor|200%" --output-http "staging.com"
猜你喜欢
- 2024-10-07 元数据与数据治理实战|Zookeeper在大型分布式系统中的应用(3)
- 2024-10-07 HCIE2020__路由交换专家__配置 IPSec VPN
- 2024-10-07 【0基础学爬虫】爬虫基础之抓包工具的使用
- 2024-10-07 Fiddler 窗口布局如何操作详解(fiddler界面)
- 2024-10-07 Zookeeper在大型分布式系统中的应用
- 2024-10-07 Linux下系统 I/O 性能分析的套路(linux ion)
- 2024-10-07 案例|如何定位无线访问互联网故障问题?
- 2024-10-07 「分享」非常全面的CentOS7系统安全检测和加固脚本
- 2024-10-07 Illustrate Asset UPnP Premium 2024.08.07音频设计的 UPnP 服务器软件
- 2024-10-07 IBM MQ---配置Explorer远程连接(ibm mq创建远程队列)
你 发表评论:
欢迎- 07-08Google Cloud Platform 加入支持 Docker 的容器引擎
- 07-08日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 07-08美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- 07-08GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 07-08谷歌推出Cloud Dataproc,缩短集群启动时间
- 07-08Infovista与Google Cloud携手推进射频网络规划革新
- 07-08比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- 07-08BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- 最近发表
-
- Google Cloud Platform 加入支持 Docker 的容器引擎
- 日本KDDI与Google Cloud 签署合作备忘录,共探AI未来
- 美国Infoblox与Google Cloud合作推出云原生网络和安全解决方案
- GoogleCloud为Spanner数据库引入HDD层,将冷存储成本降低80%
- 谷歌推出Cloud Dataproc,缩短集群启动时间
- Infovista与Google Cloud携手推进射频网络规划革新
- 比利时Odoo与Google Cloud建立增强合作,扩大全球影响力
- BT 和 Google Cloud 通过 Global Fabric 加速 AI 网络
- NCSA和Google Cloud合作开发AI驱动的网络防御系统,加强泰国网络空间的安全性
- SAP将在沙特阿拉伯 Google Cloud 上推出BTP服务
- 标签列表
-
- ifneq (61)
- 字符串长度在线 (61)
- googlecloud (64)
- messagesource (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)