介绍
Gor 是用 Golang 写的一个 HTTP 实时流量复制工具。只需要在 LB 或者 Varnish 入口服务器上执行一个进程,就可以把生产环境的流量复制到任何地方,比如 Staging 环境、Dev 环境。完美解决了 HTTP 层实时流量复制和压力测试的问题。
Gor工作流程
主要功能
Gor 支持流量的放大和缩小、频率限制,这样不需要搭建和生产环境一致的服务器集群也可以正确测试。
Gor 还支持根据正则表达式过滤流量,这意味着可以单独测试某个 API 服务。
Gor还可以修改 HTTP 请求头,比如替换 User-Agent, 或者增加某些 HTTP Header 。
Gor 还可以把请求记录到文件,以备回放和分析。Gor 支持和 ElasticSearch 集成,将流量存入 ES 进行实时分析。
开源地址
Github: https://github.com/buger/goreplay
部署安装
(一)常用安装方式
1.官网下载安装
wget https://github.com/buger/gor/releases/download/v0.12.1/gor_0.12.1_x64.tar.gz
tar xzvf gor_0.12.1_x64.tar.gz
cp gor /usr/local/bin
(二)安装参考文档
1.https://www.jianshu.com/p/57e058ad4995
2.nohup gor --input-raw :9003 --output-file 9003.