首页
网站导航
关于
Search
1
解决Typecho Joe主题访问fastly.jsdelivr.net速度慢的方案 | 快速优化技巧
2,191 阅读
2
解决WSL2内存不释放问题的最佳指南
1,407 阅读
3
如何在 Typecho Joe 主题的文章中增加目录
1,171 阅读
4
GO语言环境的搭建教程 - 完全指南
1,005 阅读
5
如何解决Win11电脑桌面上方显示横线问题 | 窗口11教程
1,005 阅读
默认分类
编程语言
GO语言
PHP
Node
javascript
html
rust
java
Css
Python
资源分享
chrome插件
阅读思考
运维架构
redis
Nginx
linux
memcached
mongodb
mysql
windows
docker
k8s
Mq
apache
CI
Git
swoole
elk
系统设计
thinkPhp
beego
登录
Search
标签搜索
重要
go基础
git 命令
go包
phpstorm
sublime
thinkphp6
mysql问题
软件分享
redis命令
php基础
thinkphp3.2
php第三扩展包
小蚯蚓博客
累计撰写
333
篇文章
累计收到
48
条评论
首页
栏目
默认分类
编程语言
GO语言
PHP
Node
javascript
html
rust
java
Css
Python
资源分享
chrome插件
阅读思考
运维架构
redis
Nginx
linux
memcached
mongodb
mysql
windows
docker
k8s
Mq
apache
CI
Git
swoole
elk
系统设计
thinkPhp
beego
页面
网站导航
关于
搜索到
1
篇与
的结果
2022-09-01
AB程序并发测试指南
安装 一种简单的方式是,下载apache安装包,安装包的bin目录下已经自带了ab工具。 也可以使用yum方式安装: yum -y install httpd-tools #安装是否成功检验 ab -V 使用 使用help参数,查看帮助信息 ab --help # 输出 -n 即requests,用于指定压力测试总共的执行次数。 -c 即concurrency,用于指定的并发数。 -t 即timelimit,等待响应的最大时间(单位:秒)。 -b 即windowsize,TCP发送/接收的缓冲大小(单位:字节)。 -p 即postfile,发送POST请求时需要上传的文件,此外还必须设置-T参数。 -u 即putfile,发送PUT请求时需要上传的文件,此外还必须设置-T参数。 -T 即content-type,用于设置Content-Type请求头信息,例如:application/x-www-form-urlencoded,默认值为text/plain。 -v 即verbosity,指定打印帮助信息的冗余级别。 -w 以HTML表格形式打印结果。 -i 使用HEAD请求代替GET请求。 -x 插入字符串作为table标签的属性。 -y 插入字符串作为tr标签的属性。 -z 插入字符串作为td标签的属性。 -C 添加cookie信息,例如:“Apache=1234”(可以重复该参数选项以添加多个)。 -H 添加任意的请求头,例如:“Accept-Encoding: gzip”,请求头将会添加在现有的多个请求头之后(可以重复该参数选项以添加多个)。 -A 添加一个基本的网络认证信息,用户名和密码之间用英文冒号隔开。 -P 添加一个基本的代理认证信息,用户名和密码之间用英文冒号隔开。 -X 指定使用的和端口号,例如:“126.10.10.3:88”。 -V 打印版本号并退出。 -k 使用HTTP的KeepAlive特性。 -d 不显示百分比。 -S 不显示预估和警告信息。 -g 输出结果信息到gnuplot格式的文件中。 -e 输出结果信息到CSV格式的文件中。 -r 指定接收到错误信息时不退出程序。 -h 显示用法信息,其实就是ab -help。 如果想要发送10000个请求,并且每次请求1000个,可以输入如下命令 ab -n 10000 -c 1000 http://wslhost:80/ # 输出如下所示 This is ApacheBench, Version 2.3 <$Revision: 1879490 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/ Licensed to The Apache Software Foundation, http://www.apache.org/ Benchmarking wslhost (be patient) Completed 1000 requests Completed 2000 requests Completed 3000 requests Completed 4000 requests Completed 5000 requests Completed 6000 requests Completed 7000 requests Completed 8000 requests Completed 9000 requests Completed 10000 requests Finished 10000 requests Server Software: nginx/1.20.2 Server Hostname: wslhost Server Port: 80 Document Path: / Document Length: 6 bytes Concurrency Level: 1000 # 并发数 Time taken for tests: 4.386 seconds # 测试总共花费的时间 Complete requests: 10000 # 完成测试的请求数量 Failed requests: 0 # 失败的数量 Total transferred: 1690000 bytes # 网络传输流量 HTML transferred: 60000 bytes # html传输流量 Requests per second: 2279.79 [#/sec] (mean) # 每秒钟成功请求的数量,也就是吞吐率RPS Time per request: 438.636 [ms] (mean) # 用户请求结果到返回结果所需时间 Time per request: 0.439 [ms] (mean, across all concurrent requests) # 服务平均请求处理时间 Transfer rate: 376.25 [Kbytes/sec] received # 平均每秒网路的流量 Connection Times (ms) min mean[+/-sd] median max Connect: 0 0 0.5 0 2 Processing: 31 421 80.1 441 508 Waiting: 6 219 124.1 217 500 Total: 31 421 80.1 441 508 Percentage of the requests served within a certain time (ms) 50% 441 # 50%的请求能在441ms内完成 66% 450 # 66%的请求能在450ms内完成 75% 454 80% 456 90% 476 95% 504 98% 506 99% 507 100% 508 (longest request) # 100%的请求能在508ms内完成
2022年09月01日
300 阅读
1 评论
0 点赞