近期在某项目验收过程中,遇到一个事情,觉得有必要说一说。大体背景是这个样子。
我们姑且称此项目为X项目,目前项目验收处于尾声,X项目负责人将验收流程进度卡在我们的性能测试报告上,并提出一个指标:20w并发量。值得一提的是项目给予的服务器仅为一台4核8G的机器,在此物理基础上想要达到20w并发量。而且此系统目前总用户数仅几千人。
稍微懂点技术的人都会觉得这逼疯了。但作为文明人,还是要心平气和的拿出文字武器来给这帮腐朽的某国企领导进行教学,毕竟活儿还是得干,钱还是得赚,脸上笑嘻嘻,心里MMP,要坚强的活下去,微笑面对世界~
于是我便整理个几个论点。
综合目前情况,性能测试拿20万并发量做标准是不合理的。
第一,正常来讲一个连接产生一个session,大约每个session在服务器上有个内存空间大小的设置,在NT上是3M,那么20万并发就需要600G内存。当然实际中考虑其他程序也占用内存,怎么也得700G-800G内存。每台电脑配置128G内存,大约需要6台高配置服务器,才能保证资源满足需求。而目前X项目正式服务器配置为4核8G。
第二,如果真有这么大的访问量,每秒20万,每天访问24小时,真正营运时间假设算8小时,86060*20(万)= 57.6亿。目前有这个规模的访问量的业务,全球现有的几家公司,纯技术人员都不会少于1500人,其中至少5%都是业界顶级精英。
简单列举下:
Google:世界浏览量最高的网站
日均 IP 访问量[一周平均]
≈ 281,280,000
日均 PV 浏览量[一周平均]
≈ 3,546,940,800
35亿,每秒12W的PV,峰值应该能达到20W。
QQ:
日均 IP 访问量[一周平均]
≈ 44,460,000
日均 PV 浏览量[一周平均]
≈ 382,356,000
4亿左右,平均每秒1.3w的PV,跟世界级的Google还是不能比
Baidu:
日均 IP 访问量[一周平均]
≈ 61,500,000
日均 PV 浏览量[一周平均]
≈ 991,995,000
10亿左右。平均每秒4w的PV,世界第六。97.2%都是国内提供的...
硬件起码也是小型机集群,然后在世界各地都N个这样的服务器节点,有超级计算机也是可能的,技术形式各异,毋庸置疑,满足这样的条件需要一笔非常昂贵的开销。通常,中型业务系统里,0~1000的并发已经足够满足需求。
大家都知道领导这个物种,尤其是在国企性质单位的领导,不管是技术部门还是非技术部门,实质上是并不懂技术的。所以看到这里基本上就已经懵逼了,就差脱口而出的“卧槽,真牛逼”。但基于多年混迹江湖的职业素养,姿态还是要摆一摆的,不能让自己下不来台对嘛。
于是乎此事的最终结果,X项目领导(甲方)指令由我们(乙方)来制定出一个指标范围,他们再来评估是否满足需要。当然对于X项目领导来说,肯定不会立刻同意我们制定的指标范围的(正如上面所说的,姿态还是得摆好~),便又如打太极一般推来搡去一回合,我们再次给出指标范围之后,此事才告一段落。
各位同仁们若有类似问题,可以作为参考。
网友评论