在系统维护过程中,平时免不了要对系统进行性能压测,http协议压测工具比较多,例如ab等,https压测可以使用go-wrk.
go-wrk安装步骤
export GOROOT=/usr/lib/golang # GOPATH export GOPATH=/root/go # GOPATH bin export PATH=$PATH:$GOROOT/bin:$GOPATH/bin go get github.com/tsliwowicz/go-wrk 该命令执行可能会报错,主要因为被墙了无法下载net 或者text,由于go get其实是将package下载下来,然后进行本地安装的,因此我们也可以将golang.org的相关包clone到本地然后再进行安装。 为了使包的导入方式不变,我们需要在src目录下面构造目录结构 安装net mkdir -p $GOPATH/src/golang.org/x/ cd $GOPATH/src/golang.org/x/ git clone https://github.com/golang/net.git net go install net 安装text cd $GOPATH/src/golang.org/x/ git clone https://github.com/golang/text.git text go install text 如果报错:can't load package: package text: no Go files in /usr/lib/golang/src/text 执行:cp -r text /usr/lib/golang/src/ 然后重新执行 go install text 然后再重新执行就可以安装成功了 go get github.com/tsliwowicz/go-wrk 继续执行 cd /root/go/src/github.com/tsliwowicz/go-wrk/ vim go-wrk.go flag.BoolVar(&http2, "http", true, "Use HTTP/2") 改成 flag.BoolVar(&http2, "http", false, "Use HTTP/2") cd .. go install ./go-wrk
压测指令 /root/go/bin/go-wrk -T 3000 -c 500 -d 10 -http false "https://ad.cmvideo.cn/test?timestamp=20191125153500&msisdn=15232345454"