您现在的位置是:首页 >技术杂谈 >Goreplay引流工具使用网站首页技术杂谈
Goreplay引流工具使用
1.安装流程
1.选择对应的版本进行安装:Releases · buger/goreplay · GitHub
开发机可安装如下版本:

2.下载到本地,然后在本地开发机建一个独立目录并上传开发机
解压压缩包: tar -zxvf gor_1.3.3_x64.tar.gz
解压缩之后的文件目录内为: gor(可执行的二进制文件) 和gor的压缩包
这时的gor文件为二进制文件,需要管理员(root)权限运行这个gor二进制文件才可以监听你的开发机端口,或者让有root权限的同学执行如下命令,就可以赋予gor文件有权限使用套接字进行网络通信(也就是可以监听端口了)
命令: sudo setcap cap_net_raw+eip /home/disk4/v_huangbencong/works/goreplay/gor(这里的gor路径需要替换为你的gor路径)
此时就可以执行gor命令了
2.基本常用gor命令如下
注意:端口号和流量转发的网址需要替换为你要监听的端口号和流量转发网址,输出的文件名也可修改(按照规范是.gor文件,可以自定义)
捕获http流量,并打印在控制台(调试使用): ./gor --input-raw :8662 --output-stdout
捕获http流量,并记录http流量到指定文件: ./gor --input-raw :8662 --output-file=requets.gor
捕获http流量,并转发流量到指定url:./gor --input-raw :8662 --output-http="http://10.252.33.46:8662"
捕获http流量,记录http流量到文件后可进行读取文件进行流量重放:./gor --input-file=requests.gor --output-http="http://10.252.33.46:8662"
捕获http流量,并记录http流量到指定文件和转发到指定url: ./gor --input-raw :8662 --output-file=request.gor --output-http="http://10.252.33.46:8662"
捕获流量时候设置http请求响应主体缓冲区大小:--output-file=requests.gor --output-http-response-buffer 4194304 (4mb)
重播流量需要跳过一些请求间隔时间,设置最长间隔时间:--input-file-max-wait=1s
使用--input-file-dry-run选项预览需要多长时间以及给定文件输入中有多少个请求
重播流量需要限速,加上如右命令: --input-file-read-depth=1000(提前读取文件,默认1000个请求缓存)
流量重播可以循环,加上以下命令(测试时可用,但要注意你的机器的承载能力):--input-file-loop
更为详细的命令可以参考这里:HTTP引流神器Goreplay详解【精译】 - sunsky303 - 博客园
3.gor注意事项
-
测试发现:gor捕获带有文件流的请求时候捕获不到这个请求(不是捕获不完整,是整个请求都无法捕获)
经过测试:--output-http-response-buffer (./gor --input-raw :8662 --output-file=request.gor --output-http-response-buffer=500000000 --output-http="http://10.252.33.46:8662")调整HTTP客户端将获取响应主体的最大字节数也无法实现 ,现在怀疑是goreplay无法抓取特定类型的文件流(疑问:上传的照片file文件 为啥无法读取)。
以下是gpt解释:
2. gor流量回放如果文件过大也不好 可以使用固定时间创建一个捕获流量的文件,比如一个小时创建一个新文件:--output-file requests-%Y-%m-%d-%H.gor(样式:
)
3. gor可以实现多个文件流量回放,并且因为记录的文件中有时间戳(每个请求都有)所有会保持原来的请求顺序。它通过并行读取所有文件并通过时间戳在多个文件之间对请求进行排序来实现。它不会读取内存中的所有文件,而是根据需要在流媒体中读取它们。(也可读取.gz结尾的压缩文件)





U8W/U8W-Mini使用与常见问题解决
QT多线程的5种用法,通过使用线程解决UI主界面的耗时操作代码,防止界面卡死。...
stm32使用HAL库配置串口中断收发数据(保姆级教程)
分享几个国内免费的ChatGPT镜像网址(亲测有效)
Allegro16.6差分等长设置及走线总结