goreplay使用
最新版的发布公告:https://leonsbox.com/goreplay-v0-16-and-4th-anniversary-5408b1fd72e0
主要提到:中间件、报文解压、从kafka读取数据、把数据写到kafka
开发语音:go,因此需要go语言环境,下载地址 https://golang.org/,mac安装 https://golang.org/doc/install?download=go1.9.1.darwin-amd64.pkg,linux安装 https://golang.org/doc/install?download=go1.9.1.linux-amd64.tar.gz
gorepaly的mac安装:下载压缩包后解压后,是一个名字为goreplay的二机制文件,直接扔进/usr/bin/目录里,就可以使用了
唯一依赖:libpcap, https://github.com/buger/goreplay/wiki/Compilation
主要功能:回放真实http流量
是否免费:有可以免费的功能,专业版需要收费
文档地址:https://github.com/buger/goreplay/wiki
下载地址:https://github.com/buger/goreplay/releases,linux和mac可以直接安装使用,也可以自编译 https://github.com/buger/goreplay/wiki/Compilation
三大收费功能:support for binary protocols like Thrift or ProtocolBuffers, saving and replaying from cloud storage, TCP sessions replication, etc

基本工作原理:gorelplay在生产环境监听真实流量,生成文件用于回放,或者直接把这些真实流量转发到目标服务
goreplay可以启动一个简单的web服务器:goreplay file-server :8000,浏览器本地访问,可以看到启动命令行的目录文件,可以本地启动多个端口,进行测试goreplay的各个功能
goreplay的几个问题:https://github.com/buger/goreplay/wiki/FAQ https://github.com/buger/goreplay/wiki/Troubleshooting
1、回放会话问题
2、如何截取https流量
3、如何以非root帐号运行 https://github.com/buger/goreplay/wiki/Running-as-non-root-user
4、使用output-http时,http请求的大小有没有限制?
举例:
1、输出两份相同流量
goreplay --input-tcp :28020 --output-http "http://staging.com" --output-http "http://dev.com"
2、一份流量平均分配到两个目标网站
goreplay --input-raw :80 --output-http "http://staging.com" --output-http "http://dev.com" --split-output true
3、 默认goreplay不记录响应信息,可以通过--input-raw-track-response开启
4、可以读取kafka的流量,把流量输出到kafka
5、可以把流量输出倒ElasticSearch
6、可以使用中间件,对发出goreplay的报文进行处理
goreplay并没有系统性能分析情况,它只负责发数据,被测应用性能情况,需要用户自己统计
参考:
1、https://goreplay.org
2、https://github.com/buger/goreplay
3、https://github.com/buger/goreplay/wiki
4、https://leonsbox.com/goreplay-v0-16-and-4th-anniversary-5408b1fd72e0
5、https://mp.weixin.qq.com/s?__biz=MzA4Nzc4MjI4MQ%3D%3D&mid=2652402185&idx=1&sn=845546cee445fbf359e69a3ccb3e22c5&scene=0##
goreplay使用的更多相关文章
- HTTP引流神器Goreplay详解【官译】
0.背景 校验系统的正确性和可靠性时,仅靠用例场景无法覆盖全生产环境下的所有场景,需要一套引流工具,在系统正式上线前,用线上的请求测试待上线系统,在正常请求下,是否有报错:在数倍请求下,系统的性能瓶颈 ...
- goreplay,tcpcopy
流量拷贝工具试用 https://github.com/buger/goreplaynginx mirror openresty 通过lua tcpcopy 支持 HTTP 请求的录制和重放,可以在线 ...
- goreplay 输出流量捕获数据到 elasticsearch
goreplay 是一个很不错的流量拷贝,复制工具,小巧,支持一些扩展,当然也提供了企业版,企业版 功能更强大,支持二进制协议的分析 . 为了方便数据的存储,我们可以使用es 进行存储 环境准备 do ...
- goreplay 镜像nginx web app流量
goreplay 是一个很不错的流量拷贝,复制工具,小巧,支持一些扩展,当然也提供了企业版,企业版 功能更强大,支持二进制协议的分析 备注: 演示使用docker-compose 运行,测试镜像流量到 ...
- goreplay HTTP-HTTPS流量复制工具
goreplay相比tcpcopy只能复制HTTP和HTTPS的流量 goreplay编译很麻烦,就直接使用编译好的版本 gor_0.10.1_x64.tar.gz 支持centos5,测试的是cen ...
- goreplay(gor) golang 流量拷贝工具试用
1. 项目地址 https://github.com/buger/goreplay 2. 安装 wget https://github.com/buger/goreplay/releases/down ...
- 推荐一款简单易用线上引流测试工具:GoReplay
一. 引流测试产生背景 日常大部分的测试工作都是在测试环境下,通过模拟用户的行为来对系统进行验证,包括功能以及性能.在这个过程中,你可能会遇到以下问题: 用户访问行为比较复杂,模拟很难和用户行为一致, ...
- HTTP流量神器Goreplay核心源码详解
摘要:Goreplay 前称是 Gor,一个简单的 TCP/HTTP 流量录制及重放的工具,主要用 Go 语言编写. 本文分享自华为云社区<流量回放工具之 goreplay 核心源码分析> ...
- The Guardian’s Migration from MongoDB to PostgreSQL on Amazon RDS
转载一片mongodb 迁移pg 数据库的文章 原文:https://www.infoq.com/news/2019/01/guardian-mongodb-postgresql The Guardi ...
随机推荐
- c#之线程同步--轻量级同步 Interlocked
轻量级同步 Interlock 为什么说它是轻量级呢?因为它仅对整形数据(即int类型,long也行)进行同步. 如果你学过操作系统里面的PV操作(即信号量),那么你对它已经了解了一般.它实现的正是如 ...
- Leetcode 639.解码方法2
解码方法2 一条包含字母 A-Z 的消息通过以下的方式进行了编码: 'A' -> 1 'B' -> 2 ... 'Z' -> 26 除了上述的条件以外,现在加密字符串可以包含字符 ' ...
- python的重重之器(生成器、迭代器、装饰器)
一.装饰器 1.定义:本质是函数,装饰其他函数就是为其他函数添加附件功能. 2.原则: a.不能修改被装饰的函数的源代码: b.不能修改被装饰的函数的调用方式: 实例: #!/usr/bin/env ...
- Matlab freqs 函数
freqs 模拟滤波器的频率响应 语法: h = freqs(b,a,w)[h,w] = freqs(b,a)[h,w] = freqs(b,a,f)freqs(b,a) 描述: freqs 返回一个 ...
- js的trim方法
ie9以前版本,不支持string.trim()方法 所以需要自己实现. <script type="text/javascript"> String.prototyp ...
- 关于caffe 是如何卷积的一点总结
最近,在看caffe源码时,偶然在网上看到一个问题?觉得挺有意思,于是,仔细的查了相关资料,并将总结写在这里,供大家迷惑时,起到一点启示作用吧. 问题的题目是CNN中的一个卷积层输入64个通道的特征子 ...
- oracle中用rownum分页并排序的查询SQL语句
oracle的sql语句中没有limit,limit是mysql中特有的,在oracle中可用rownum来表示,用于查询结果中的前N行数据. 如要查询emp表中的前5行数据,可用如下语句: sele ...
- BZOJ1562 [NOI2009]变换序列 【KM算法】
题目 输入格式 输出格式 输入样例 5 1 1 2 2 1 输出样例 1 2 4 0 3 提示 30%的数据中N≤50: 60%的数据中N≤500: 100%的数据中N≤10000. 题解 每个位置可 ...
- 论文笔记:《OverFeat: Integrated Recognition, Localization and Detection using Convolutional Networks DeepLearning 》
一.Abstract综述 训练出一个CNN可以同时实现分类,定位和检测..,三个任务共用同一个CNN网络,只是在pool5之后有所不同 二.分类 这里CNN的结构是对ALEXNET做了一些改进,具体的 ...
- express中放置静态文件
不使用模版引擎的话要直接添加html,可以使用express.static()中间件设定静态文件目录,然后将html文件放在里面,如:express默认静态文件目录为 app.use(express. ...