记在VMware虚拟机中对网站进行性能压力测试的经历
由于本次测试,仅仅是对静态网站首页进行的测试,所以没有涉及到MySQL数据库的性能监测
服务器基本配置
webbench测试工具
Linux上一款优秀的web性能压力测试工具。webbench最多可以模拟3万个并发连接去测试网站的负载能力。
下面开始测试
第一次并发测试
下面是5000个并发持续120秒访问首页,进行压力测试
[root@localhost webbench-1.5]# webbench -c 5000 -t 120 http://192.168.1.71/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.71/
5000 clients, running 120 sec.
Speed=519831 pages/min, -9534187 bytes/sec.
Requests: 1039663 susceed, 0 failed.
上面测试结果展示,每分钟处理51.9831万个请求的页面,相当于每秒能够处理8663个请求
请求成功数是1039663次,请求失败数是0次
第二次并发测试
[root@localhost webbench-1.5]# webbench -c 5000 -t 300 http://192.168.1.71/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.71/
5000 clients, running 300 sec.
Speed=514527 pages/min, -2642553 bytes/sec.
Requests: 2572479 susceed, 159 failed.
请求成功数是2572479次,请求失败数是159次,说明5000的并发已经很危险了
第三次并发测试
下面是6000个并发持续60秒访问首页,进行压力测试
[root@localhost webbench-1.5]# webbench -c 6000 -t 60 http://192.168.1.71/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.71/
6000 clients, running 60 sec.
Speed=222115 pages/min, 11179411 bytes/sec.
Requests: 221307 susceed, 808 failed.
第四次测试
[root@localhost webbench-1.5]# webbench -c 4000 -t 300 http://192.168.1.71/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.71/
4000 clients, running 300 sec.
Speed=530127 pages/min, -1853290 bytes/sec.
Requests: 2650594 susceed, 44 failed.
第五次测试
[root@localhost webbench-1.5]# webbench -c 3000 -t 300 http://192.168.1.71/
Webbench - Simple Web Benchmark 1.5
Copyright (c) Radim Kolar 1997-2004, GPL Open Source Software.
Benchmarking: GET http://192.168.1.71/
3000 clients, running 300 sec.
Speed=542579 pages/min, -1223879 bytes/sec.
Requests: 2712899 susceed, 0 failed.
总结分析
分析
并发为5000时,访问网站打开速度比较快,基本不受影响,但是内存使用率达到
物理内存:共 911.86 MB , 已用 836.53 MB , 空闲 75.33 MB , 使用率 92.5%,
真实内存使用 729.24 MB , 真实内存空闲 182.62 MB , 使用率 79.97 %;
并发为4000时,访问网站打开速度快,基本不受影响,但是内存使用率达到
物理内存:共 911.86 MB , 已用 803.5 MB , 空闲 108.36 MB , 使用率 88.12%
Cache化内存为 197.68 MB , 使用率 21.68 % | Buffers缓冲为 0 MB
真实内存使用 605.82 MB , 真实内存空闲 306.04 MB , 使用率 66.44 %
SWAP区:共 1640 MB , 已使用 106.36 MB , 空闲 1533.64 MB , 使用率 6.49 %
并发为3000时,访问网站打开速度快,但是内存使用率达到
物理内存:共 911.86 MB , 已用 748.3 MB , 空闲 163.56 MB , 使用率 82.06%
Cache化内存为 244.91 MB , 使用率 26.86 % | Buffers缓冲为 0 MB
真实内存使用 503.39 MB , 真实内存空闲 408.47 MB , 使用率 55.2 %
SWAP区:共 1640 MB , 已使用 106.06 MB , 空闲 1533.94 MB , 使用率 6.47 %
%Cpu(s): 18.5 us, 62.4 sy,
总结
从上面五次测试结果可以看出,当前网站支撑3000个并发是没问题的,内存使用率55%,cpu使用率占62.4%
因此,基本锁定网站能支撑的并发是3k左右,基本能抗住日均流量259200000 = 2.592亿次。
上面的结论是,以静态网站作为前提的。But 我没把服务器网络带宽算进去……不知道影响几何了。
一般的,中小企业网站能达到3000并发已经相当不错了。而一般的很多项目,基本日均PV数是几百万,这只要并发能达到100左右,日均PV就有864万左右了。
经过这次压力测试,基本对并发,日均PV有了大致的认识,也对服务器性能有了基本了解
要支持高并发、大流量,还得对程序进行好的优化。
记在VMware虚拟机中对网站进行性能压力测试的经历的更多相关文章
- 在VMware虚拟机中配置DOS汇编开发环境!!
操作系统:win7 32位 DOS环境:DosBox 下载:http://www.dosbox.com/ 选择当前适合自己版本,下载就可以了. 汇编编译器:MASM 5.0 下载:http://do ...
- VMware虚拟机中如何安装VMWare-Tools详解
VMware虚拟机中如何安装VMWare-Tools详解 好处:可以支持图形界面,可以支持共享文件功能等 VMware虚拟机中如何配置显 VMware作为一款虚拟机利器,很多人都利用它来实现Linux ...
- 虚拟化技术学习(一)在VMware虚拟机中安装KVM
近期一直研究虚拟化技术,曾经对VMware虚拟机有一定的了解,近期突发奇想,能不能在VMware虚拟机中再装一个虚拟机呢? 那么问题就来了,首先,你须要一台电脑,vmware软件,(本人的电脑配置渣渣 ...
- 外网访问Vmware虚拟机中的某个服务(如http)
如果主机是windowx NAT中隐藏的端口映射,说明一下环境,利用当然是VMnet8网络连接,在虚拟机中架设linux WEB服务器利用WEB默认80端口,IP为192.168.11.10,真实主机 ...
- 【Linux】VMware虚拟机中如何配置静态IP
此处详解如何在VMware虚拟机中配置静态IP. 上图是一个草图,大致说明下VMware网络情况.网段指某个IP范围,例如一栋小区楼和另一栋小区楼就不是一个网段 如果你在A小区,你女朋友在B小区,你想 ...
- Vmware虚拟机中安装centos,并实现联网
1 安装所需要的软件 vmware workstation 12 永久激活码:5A02H-AU243-TZJ49-GTC7K-3C61N CentOS-7-x86_64-Minimal-1708 2 ...
- VMware虚拟机中如何配置静态IP
我们首先说一下VMware的几个虚拟设备 VMnet0:用于虚拟桥接网络下的虚拟交换机 VMnet1:用于虚拟Host-Only网络下的虚拟交换机 VMnet8:用于虚拟NAT网络下的虚拟交换机 VM ...
- VMware虚拟机中为Linux 添加虚拟硬盘(VirtualBox方法类似)
修改1:2014-06-24 11:38:21 Linux添加硬盘是在原来安装的硬盘空间不够或者需要使用其他硬盘上的东西时候的解决办法,因为大多数初学者习惯使用虚拟机,这里以在Vmware虚拟机中实现 ...
- vmware 虚拟机中有时获取不到IP地址
转载: https://blog.csdn.net/valecalida/article/details/80683518 解决方法:打开vmware,然后找到编辑 然后点击虚拟网络编辑器 此时应该先 ...
随机推荐
- 小记之while循环条件的操作位置
# 判断条件时自减操作 (循环体判断 len == 0) > 执行顺序为,while(len) → len-- → 循环体 while(len--) { == len) { *buf = i2c ...
- 【uoj428】普通的计数题
Portal --> uoj428 Solution 不会胖子的一个log正解qwq只能怂怂滴写分治了qwq 首先就是一个我想不到的转化qwq 我们将第\(i\)次操作加入的数看成一个编 ...
- PHP内核-环境搭建(一)
难得闲下来,发现自己没有系统的学习过PHP内核,希望我能够慢慢啃下PHP内核书籍,无论是抄袭也好,码字也好,一步一个脚印走下去. 学习来源:http://www.php-internals.com/b ...
- 纯干货!一款APP从设计稿到切图过程全方位揭秘(转)
@BAT_LCK :我本身是一名GUI设计师,所以我只站在GUI设计师的角度去把APP从项目启动到切片输出的过程写一写,相当于工作流程的介绍吧.公司不同,流程不尽相同,但是终究还是能有些帮助. 依旧声 ...
- Zabbix应用八:Zabbix监控MongoDB
利用Zabbix监控MongoDB 一.首先介绍mongodb采集到的数据含义: 1.状态采集命令: >db.serverStatus(); 2.输出内容: { "host" ...
- 分布式锁--Redis小试牛刀
参考文章: Redis分布式锁的正确实现方式 分布式锁看这篇就够了 在这两篇文章的指引下亲测 Redis分布式锁 引言 分布式系统一定会存在CAP权衡问题,所以才会出现分布式锁 什么是CAP理论? 为 ...
- 从ACM会议分析我国计算机科学近十年发展情况
从ACM会议分析我国计算机科学近十年发展情况 来源:<中国计算机学会通讯>2015年第10期<专栏> 作者:陈 钢 2006年,承蒙李国杰院士推荐,<中国计算机学会通讯& ...
- elementUI 通用确认框
Util.vue <script> import VueResource from 'vue-resource' function confirm(_this, operate, fun) ...
- MySQL记录异常实体类设计
public class LogInfo { /// <summary> /// 应用名 /// </summary> public string AppName { get; ...
- javascript鼠标拖拽的那些事情
<html> <head> <title>javascript鼠标拖拽的那些事情</title> <meta http-equiv="C ...