网站并发量的计算方法
你想建设一个能承受500万PV/每天的网站吗? 500万PV是什么概念?服务器每秒要处理多少个请求才能应对?如果计算呢?
PV是什么:
PV是page view的简写。PV是指页面的访问次数,每打开或刷新一次页面,就算做一个pv。
计算模型:
每台服务器每秒处理请求的数量=((80%*总PV量)/(24小时*60分*60秒*40%)) / 服务器数量 。
其中关键的参数是80%、40%。表示一天中有80%的请求发生在一天的40%的时间内。24小时的40%是9.6小时,有80%的请求发生一天的9.6个小时当中(很适合互联网的应用,白天请求多,晚上请求少)。
简单计算的结果:
((80%*500万)/(24小时*60分*60秒*40%))/1 = 115.7个请求/秒
((80%*100万)/(24小时*60分*60秒*40%))/1 = 23.1个请求/秒
初步结论:
现在我们在做压力测试时,就有了标准,如果你的服务器一秒能处理115.7个请求,就可以承受500万PV/每天。如果你的服务器一秒能处理23.1个请求,就可以承受100万PV/每天。
留足余量:
以上请求数量是均匀的分布在白天的9.6个小时中,但实际情况并不会这么均匀的分布,会有高峰有低谷。为了应对高峰时段,应该留一些余地,最少也要x2倍,x3倍也不为过。
115.7个请求/秒 *2倍=231.4个请求/秒
115.7个请求/秒 *3倍=347.1个请求/秒
23.1个请求/秒 *2倍=46.2个请求/秒
23.1个请求/秒 *3倍=69.3个请求/秒
最终结论:
如果你的服务器一秒能处理231.4--347.1个请求/秒,就可以应对平均500万PV/每天。
如果你的服务器一秒能处理46.2--69.3个请求,就可以应对平均100万PV/每天。
说明:
这里说明每秒N个请求,就是QPS。因为我关心的是应用程序处理业务的能力。
实际经验:
1、根据实际经验,采用两台常规配置的机架式服务器,配置是很常见的配置,例如一个4核CPU+4G内存+服务器SAS硬盘。
2、个人武断的认为在服务器CPU领域Intel的CPU要优于AMD的CPU,有反对的就反对吧,我都说我武断了(请看CPU性能比较),不要太相信AMD的广告,比较CPU性能简单办法就是比价格,不要比频率与核心数,价格相差不多的性能也相差不多。
3、硬盘的性能很重要,由其是数据库服务器。一般的服务器都配1.5万转的SAS硬盘,高级一点的可以配SSD固态硬盘,性能会更好。最最最最重要的指标是“随机读写性能”而不是“顺序读写性能”。(本例还是配置最常见的1.5万转的SAS硬盘吧)
4、一台服务器跑Tomcat运行j2ee程序,一台服务器跑MySql数据库,程序写的中等水平(这个真的不好量化),是论坛类型的应用(总有回帖,不太容易做缓存,也无法静态化)。
5、以上软硬件情况下,是可以承受100万PV/每天的。(已留有余量应对突然的访问高峰)
注意机房的网络带宽:
有人说以上条件我都满足了,但实际性能还是达不到目标。这时请注意你对外的网络的带宽,在国内服务器便宜但带宽很贵,很可能你在机房是与大家共享一条100M的光纤,实际每个人可分到2M左右带宽。再好一点5M,再好一点双线机房10M独享,这已经很贵了(北京价格)。
一天总流量:每个页面20k字节*100万个页面/1024=19531M字节=19G字节,
19531M/9.6小时=2034M/小时=578K字节/s 如果请求是均匀分布的,需要5M(640K字节)带宽(5Mb=640KB 注意大小写,b是位,B是字节,差了8倍),但所有请求不可能是均匀分布的,当有高峰时5M带宽一定不够,X2倍就是10M带宽。10M带宽基本可以满足要求。
以上是假设每个页面20k字节,基本不包含图片,要是包含图片就更大了,10M带宽也不能满足要求了。你自已计算吧。
(全文完)
附:性能测试基本概念
---------------------------------------------------------------------------------------
基本概念:
Throughput(吞吐量):按照常规理解网络吞吐量表示在单位时间内通过网卡数据量之和,其中即包括本机网卡发送出去的数据量也包括本机网卡接收到的数据量。 一个100Mb(位)的双工网卡,最大发送数据的速度是12.5M字节/s , 最大接收数据的速度是12.5M字节/s, 可以 同时 收发 数据。
并发用户数:是同时执行操作的用户(线程数)。
响应时间:从请求发出到收到响应花费的时间 。
QPS - Queries Per Second 每秒处理的查询数(如果是数据库,就相当于读取)
TPS - Transactions Per Second 每秒处理的事务数(如果是数据库,就相当于写入、修改)
IOPS,每秒磁盘进行的I/O操作次数
例如对某个数据库测试,分开两次测QPS与TPS。
QPS(读取)值总是高于TPS(写、改),并且有倍率关系,因为:
1、数据库对查询可能有缓存。
2、机械硬盘或SSD硬盘的读就是比写快。
网站并发量的计算方法相关推荐
- day28:检测磁盘io|自定义时段查看tomcat 日记|打印城市名字|代码上线|统计网站并发量...
2019独角兽企业重金招聘Python工程师标准>>> 1.有一台阿里云的机器,接到反映说服务器的磁盘 io 很高,登录服务器查看,并没有发现问题,怀疑是间歇性的,看到造成磁盘 io ...
- 服务器并发量计算,网站并发量计算
服务器并发计算 计算网站资源并发 计算网站资源并发 预计pv数*页面请求体大小(MB)=总网络请求大小(MB/s),转换成带宽(*8),得出需要的带宽(Mbps) 假设有一天6000pv访问量(并发) ...
- 大流量高并发量网站的之解决方案
一.对于网站访问速度影响的条件如下: 瓶颈主要有: 1.磁盘搜索 优化方法是:将数据分布在多个磁盘上 2.磁盘读/写 优化方法是:从多个磁盘并行读写. 3.CPU周期 优化方法:扩充内存 4.内存带宽 ...
- 一个WEB网站高并发量的解决方案
一个WEB网站高并发量的解决方案 参考文章: (1)一个WEB网站高并发量的解决方案 (2)https://www.cnblogs.com/dotnetHui/p/7943605.html 备忘一下.
- Java怎么测并发量_如何测试一个web网站的性能(并发数)?
最近做了个web网站(javaweb),现在想测试一下这个网站能承受的最大并发数,但是对于压力测试知之甚少,求指教啊,我有两个问题: 1.我最想测试的是最大并发量,怎么测试呢? 2.一般web网站性能 ...
- nginx简介(轻量级开源高并发web服务器:大陆使用者百度、京东、新浪、网易、腾讯、淘宝等)(并发量5w)(一般网站apache够用了,而且稳定)...
nginx简介(轻量级开源高并发web服务器:大陆使用者百度.京东.新浪.网易.腾讯.淘宝等)(并发量5w)(一般网站apache够用了,而且稳定) 一.总结 1.在连接高并发的情况下,Nginx是A ...
- 服务器并发量估算公式和计算方法
本文详细讲解了服务器并发量估算公式和计算方法,对大家的学习或工作具有一定的参考借鉴价值.需要的朋友可以收藏下,方便下次浏览观看 最近需要对再次对服务器进行压力测试,这里整一下最近学习到的估算方案和估算 ...
- 500人访问的网站服务器配置,500人并发量的服务器配置
500人并发量的服务器配置 内容精选 换一换 当您发现云服务器的运行速度变慢或云服务器突然出现网络断开的情况,则可能是云服务器的带宽和CPU利用率过高导致.如果您已经通过云监控服务创建过告警任务,当C ...
- 怎么估算并发量(以千万PV网站为例)
要估算并发,首先是获取PV(Page View),即一天内用户访问页面的数量,这个数量你可以想想用什么办法获取,比如根据已有系统估算.根据日志数据获取等等,这里举例说千万PV的一个网站吧. 有了PV, ...
最新文章
- 任何社区,只要能影响他人成长的人,都可以成为敏捷个人的荣誉会员
- java ajax返回json数据json对象
- 正则表达式--python的re模块
- 在ubuntu上如何将多张图片或PDF合到一个PDF上
- 微机原理——扩展存储器设计
- 2005年最具钱途的人才:软件研发炙手可热
- python 神经网络_100行Python代码,轻松搞定神经网络 !
- [转]JAVA自动装箱和拆箱
- Bailian2871 Bailian3682 整数奇偶排序【排序】
- pyqt5 登录窗口调用主窗口
- 通过ajax获取经纬度,通过百度地图获取经纬度
- DB2的下载、图解安装、可能出现的问题(一篇解决)
- python 大智慧自定义数据_大智慧自定义指数
- 如何实现Windows 和 Linux 共享文件夹
- word公式编辑器脱离鼠标的输入
- matlab非参数检验(符号检验,秩和)
- 高中数学解题技巧:平面解析几何-圆锥曲线的综合问题
- DP算法:动态规划算法
- PC端播放RTMP流(手机端无法播放)
- 怎么计算机械设备电机,电机功率计算公式是什么?电机正确选配方法