goperf

package module
v0.0.0-...-eefbf50 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2023 License: MIT Imports: 14 Imported by: 2

README

goperf

Description

tcp并发,吞吐量测试工具(可测试socks5代理)

准备工作

# Download this repo
mkdir -p ./git/src/gitee.com/gbat
cd ./git/src/gitee.com/gbat
git clone https://gitee.com/gbat/goperf.git
cd goperf

# Build benchmark tools
cd cmd
go build -o goperf


吞吐量测试

server
goperf -s -ip=127.0.0.1 -port=10001  -io -b=500

s:开启服务端
ip:tcp服务端绑定的IP
port:tcp服务端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
client

####直连

goperf -ip=127.0.0.1 -port=10000  -io -b=500 -amount=1 -concurrency=1  -destips=127.0.0.1 -destport=10001

ip:tcp客户端绑定的IP
port:tcp客户端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
amount:测试发送的数据总量,单位GB
concurrency:并发数
socks:连接类型 默认-直连,socks-socks5代理
destips:目标ip,即目标tcp服务端ip地址集合,可为多个tcp节点,以","分割
destport:目标端口号:即目标tcp服务端端口号

####代理

goperf -ip=127.0.0.1 -port=10000  -io  -b=500 -amount=1 -concurrency=1 -socks -destips=127.0.0.1 -destport=10001 -proxyip=127.0.0.1 -proxyports=11000,12000 -multiport
         -user=admin -pwd=123456

ip:tcp客户端绑定的IP
port:tcp客户端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
amount:测试发送的数据总量,单位GB
concurrency:并发数
socks:连接类型 默认-直连,socks-socks5代理
destips:目标ip,即目标tcp服务端ip地址集合,可为多个tcp节点,以","分割
destport:目标端口号:即目标tcp服务端端口号
proxyip:socks5代理ip地址
proxyports:socks5代理端口号,可以开启多个端口号转发,以","分割
multiport:socks5代理端口号类型,默认-单端口,multiport-多端口
user:socks5代理用户名
pwd:socks5代理密码

并发测试

server
goperf -s -ip=127.0.0.1 -port=10001  -b=500

s:开启服务端
ip:tcp服务端绑定的IP
port:tcp服务端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
client

####直连

goperf -ip=127.0.0.1 -port=10000   -b=500 -amount=1 -concurrency=100  -destips=127.0.0.1 -destport=10001

ip:tcp客户端绑定的IP
port:tcp客户端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
amount:测试发送的数据总量,单位GB
concurrency:并发数
socks:连接类型 默认-直连,socks-socks5代理
destips:目标ip,即目标tcp服务端ip地址集合,可为多个tcp节点,以","分割
destport:目标端口号:即目标tcp服务端端口号

####代理

goperf -ip=127.0.0.1 -port=10000  -b=500 -amount=1 -concurrency=100 -socks -destips=127.0.0.1 -destport=10001 -proxyip=127.0.0.1 -proxyports=11000,12000 -multiport
         -user=admin -pwd=123456

ip:tcp客户端绑定的IP
port:tcp客户端绑定的端口号
k:开启长连接,默认关闭
b:每次发送数据大小,默认500,单位:B
io:默认-并发测试,io-吞吐量测试
amount:测试发送的数据总量,单位GB
concurrency:并发数
socks:连接类型 默认-直连,socks-socks5代理
destips:目标ip,即目标tcp服务端ip地址集合,可为多个tcp节点,以","分割
destport:目标端口号:即目标tcp服务端端口号
proxyip:socks5代理ip地址
proxyports:socks5代理端口号,可以开启多个端口号转发,以","分割
multiport:socks5代理端口号类型,默认-单端口,multiport-多端口
user:socks5代理用户名
pwd:socks5代理密码

###注意 -io,即测试吞吐量时,concurrency尽量不要太大,默认值即可

###效果

并发测试 吞吐量测试

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ApiShortLink()

目标端随机,定期端链接测试

func Client

func Client()

func Concurrency

func Concurrency()

并发

func IOPS

func IOPS()

吞吐量

func LongLink()

目标端随机,定期端链接测试

func LongRequest

func LongRequest()

长连接持续发数据(0-4MB随机发送)

func RangeRand

func RangeRand(min, max int64) int64

生成区间[-m, n]的安全随机数

func SendIO

func SendIO()

目标端随机,定期间隔吞吐量测试

func Server

func Server()

func ShortRequest

func ShortRequest()

短链接间断性发数据

Types

This section is empty.

Directories

Path Synopsis
*
*

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL