ab网站压力测试命令
格式: ./ab [options] [http://]hostname[:port]/path
-n 测试会话中所执行的请求个数,默认时,仅执行一个请求
-c 一次产生的请求个数。默认是一次一个
-t 测试所进行的最大秒数
-v 设置显示信息的详细程度 - 4或更大值会显示头信息, 3或更大值可以显示响应代码(404, 200等), 2或更大值可以显示警告和其他信息。 -V 显示版本号并退出。
4个比较长用的参数 若有其他需要man下吧
一般工作中我们只用-n 和 -c:
例:./ab -c 1000 -n 1000 http://127.0.0.1/index.php
-n 1000 表示总请求数为1000
-c 10 表示并发用户数为10
http://127.0.0.1/index.php 表示这些请求的目标url
#/usr/local/xiaobai/apache2054/bin/ab -c 1000 -n 1000 http://127.0.0.1/index.html.zh-cn.gb2312
This is ApacheBench, Version 2.0.41-dev <$Revision: 1.121.2.12 $> apache-2.0
Copyright (c) 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright (c) 1998-2002 The Apache Software Foundation, http://www.apache.org/
Benchmarking 127.0.0.1 (be patient)
Completed 100 requests
Completed 200 requests
Completed 300 requests
Completed 400 requests
Completed 500 requests
Completed 600 requests
Completed 700 requests
Completed 800 requests
Completed 900 requests
Finished 1000 requests
Server Software:
被测试web服务软件名称他来自于http响应数据的头信息
Server Hostname:
表示请求的url中的主机部分名称
Server Port:
测试web服务器软件的监听端口
Document Path:
请求的url根的绝对路径
Document Length:
表示http响应数据的正文长度
Concurrency Level:
并发的用户数
Time taken for tests:
表示所有这些请求被处理完成所花费的时间总和
Complete requests:
表示总请求书
Failed requests:
失败的请求总数
Write errors:
Total transferred:
所有请求的响应数据长度总和
HTML transferred:
所有请求的响应数据中正文数据的总和,也就是减去了Total transferred 中的HTML响应数据中头信息的长度
Requests per second:132.12 [#/sec] (mean)
重点:吞吐率,他等于Complete requests / Time taken for tests(相当于 LR 中的 每秒事务数 ,后面括号中的 mean 表示这是一个平均值)
Time per request:
用户平均请求等待时间,他等于Time taken for tests /(Complete requests / Concurrency Level)【相当于 LR 中的 平均事务响应时间】
Time per request: 9.289 [ms] (mean, across all concurrent requests)
服务器平均请求处理时间他等于Time taken for tests / Complete requests (每个请求实际运行时间的平均值)
Transfer rate:
请求在单位时间内从服务器获取数据的长度他等于Total transferred / Time taken for tests
这个统计选项可以很好的说明服务器在处理能力达到极限时其出口带宽的需求量
Percentage of the requests served within a certain time (ms)
用于描述每个请求处理时间的分布情况,例如:50% 1 50%请求处理时间不超过1秒 (这里所指的处理时间是指:Time per request )
..........
100% 10 100%请求处理时间不超过10秒
apache自带压力测试工具ab详解(整理)
-
iOS获取设备StatusBar高度
iOS获取设备StatusBar高度
-
UINavigationController和UIScrollView滚动-92
如果navigation bar或者toolbar不透明,view controller就无法让它的view全屏显示。换句话说,如果不希望view controller里面的view全屏显示,就应该把navigation bar设为不透明。
-
NSLog各种打印占位符
打印CGRect : NSLog(@"%@",NSStringFromCGRect(someCGRect)); 或者CFShow(NSStringFromCGRect(someCGRect));
-
UIScrollView嵌套UIScrollView、UITableView、UICollectionView的滚动处理
为了展示嵌套效果,适配复杂布局内部采用了三个子ViewController:
-
iOS导航栏、状态栏及Tabbar高度(区分iPhone X与其他iPhone机型)
一行代码,解决所有的导航栏高度问题
-
iOS 获取状态栏、导航栏、tabBar高度
状态栏、导航栏 和 tabbar 高度(pt)
-
shortid nodejs短id生成器
短ID在实际运用中很广泛, 其中比较典型的运用就是短地址。 市面上肯定有不少开源的生成短ID库, 基于node.js的估计也不少。 鉴于本人已然是node.js的脑残粉(本职java开发), 很多业余项目从前端到后端都基于javascript开发, 加上npm和bower的包管理以及grunt的打包工具, 在项目开发过程中体验特别酸爽。 由于当时项目前后端都会用到短ID, 但没找到合适的库同时支持npm和bower的(可能孤陋寡闻). 因此自己乐此不疲地又造了个轮子js-shortid(夷,为什么会说又呢?!). 下面主要介绍它的实现方案, 自认为比较优雅简洁。
-
CREATE TABLE 表名 AS SELECT 语句 快速复制表但是锁表
注意Table2的主键约束,如果Table2有主键而且不为空,则 field1, field2…中必须包括主键 在执行语句的时候,MySQL是逐行加锁的(扫描一个锁一个),直至锁住所有符合条件的数据,执行完毕才释放锁。所以当业务在进行的时候,切忌使用这种方法。 在RR隔离级别下,还会加行锁和间隙锁
-
Navicat配置mysql数据库用户权限
用数据库的时候就会遇到有多个用户,分配用户权限的情况,有些用户只读,有些用户可以读写,有些用户只能操作一个或者多个数据库,如何给mysql的用户设置权限,我这里描述一下如何用navicat图形操作分配用户权限
-
Android View的坐标和屏幕高度 getY getX getLett getTop
View.getX()和View.getY()获取到的值为相对于父视图而言的两个左边缘和上边缘的距离。我们需要其他方法获得距离手机顶端的坐标