JMeter通过HTTP请求测试网站的方法见这个博文:http://leafwf.blog.51cto.com/872759/1618409
我的测试数据截图:
测试数据库的性能:
腾讯云机器测试数据:
主机配置:
CPU:1核 主频:2294.686M Intel(R) Xeon(R) CPU E5-26xx v3
内存:1G 速度:未测试
硬盘:20G 速度:未测试
网速:
上传:5MB/s
下载:1MB/s
单条SQL执行耗时:大约0.010s(10ms)
所以,在1秒的时间内,理论最大查询100次SQL。
秒杀首页,页面大小:5.1KB
压测时,吞吐量最大1000/分钟,也就是最大的请求为每秒16个。
而理论最大的吞吐量为128/5.1=25/秒(计算方法:网速/每次请求体大小)
对于上面未测试的数据,我用nmon工具也看了,确实CPU和内存完全不是瓶颈。
有别人的测试数据作参考:
操作 | 响应时间 |
---|---|
打开一个网站 | 几秒 |
在数据库中查询一条记录(有索引) | 十几毫秒 |
机械磁盘一次寻址定位 | 4毫秒 |
从机械磁盘顺序读取1MB数据 | 2毫秒 |
从SSD磁盘顺序读取1MB数据 | 0.3毫秒 |
从远程分布式缓存Redis读取一个数据 | 0.5毫秒 |
从内存中读取1MB数据 | 十几微秒 |
Java程序本地方法调用 | 几微秒 |
网络传输2KB数据 | 1微秒 |
参考地址:http://blog.csdn.net/bluejoe2000/article/details/40474575
总结:分析我的网站,网络是最大的瓶颈,最多支持25个人同时传输数据;然后是数据库,数据库的查询是10ms,也就是每秒最多100个人同时访问。