3000人同时访问一个单纯的html文件(放在阿里云最低配的ECS下,apache),多少带宽足够?
3000人同时访问一个纯静态文件,静态文件大小28K,那瞬间请求流量最大理论值为:3000x28K≈82M 。但是此值仅仅是理论上的瞬间最大流量,因为你的站点不可能每时每秒都保持在3000人访问,而是一段时间内的访问人数。如果真是每秒都至少是3000人访问,那你的服务器上行带宽至少得在 82x8 = 656M(之所以乘以8,是因为我们说的速率和运营商说的速率不是一个概念,换算单位不同),这样看来费用是相当的高。
但实际情况下并不能这样计算,实际请求带宽要远远低于656M,原因主要有以下几点:
用户流量是分散的,并不是每秒都有3000人访问;
浏览器对于静态页是有缓存的,所以这3000人中有一部分用户发出请求后,其实是直接从本地缓存中加载的,而没有请求远程服务器。
要知道,服务器的上行带宽是很贵的,按上面计算方法,就算打个折,你的服务器固定带宽100M的话,那光带宽费用一个月就要近7000元。
所以一般中小型网站的服务器上行带宽100M都算很大了,鉴于你的访客量不固定,我给你的建议是:
前端走CDN缓存,如果静态文件长期不更新,可以把缓存时间设得很长,如一个月;
后端ECS选择低配即可,带宽不要选固定带宽(选择按使用流量来计费,带宽选择5M足够了)。
这种配置下,别说3000人同时访问了,更高的并发都能抗得住。因为CDN本身就充当了负载均衡的角度,而且CDN节点遍布全国,使得用户“就近读取”静态资源。
以上就是我的观点,对于这个问题大家是怎么看待的呢?欢迎在下方评论区交流 ~ 我是科技领域创作者,欢迎关注我了解更多科技知识!
事实胜于雄辩
根据你的问题描述不难发现2个问题,
1,样式文件放在了腾讯云COS?
2,服务器却选择了阿里云的低配ecs?
原因:动静分离你的cdn加速不是用的阿里的那就说明没有阿里的块,对于外网服务器来说,一次ip你却进行了俩次转换,包括一些跨域其他问题,服务器最低配置是有 1C/0.5G的ECS,那么对于这个服务器来说本身cpu处理就不行,最多用于学习和测试。就好比一个外网映射工具而已。
带宽很小。
下面我们实践来操作一下运用测试工具测试一下我自己1核2g 5M带宽的服务器,我还买了阿里的cdn+域名映射,资源动静分离了。目前项目基本秒开页面。很快啊!
下面开了3000个线程请求了一个html页面,
看下面参数详解
1M等于128kb 带宽传输。线程响应根据接口返回执行秒数来计算 那么就是3000/7 约等于430 那么就是一秒有430个线程在访问。而不是一秒就能请求3000个线程的请求,这个也和服务器内存配置,后台接口处理有关系。请求和响应都是基于服务端配置来决定的,cdn加速只是快速路由到最近地址访问,并不能根本解决服务端配置。tomcat 默认200线程数,当然这个是根据你服务器内存配置来的,线程也是根据你服务器cpu处理来的,你的服务器处理越快,你的线程就开的多。
结论:
3000人同时访问一个单纯的html文件(放在阿里云最低配的ECS下,apache),多少带宽足够,根据实践我们可以得出结论,
最低的ecs配置满足不了3000人同时访问,2核4g的5M带宽+cdn加速 可以满足同时访问。
有人会说我访问html和你后台有什么关系,我想说的是页面和后台单纯来说是没有关系,但是在实践运用当中,作为数据交互的ul至关重要。
这种方式建议使用对象存储,对象特别适合这种纯静态网站访问,同时图片部分也可以直接使用CDN进行加速。
我们以阿里云为例,你需要付出的成本大约为:
静态网站成本 = 对象存储空间成本 + 访问流量成本(下行流量)
当然如果需要CDN也可以直接在对象存储中使用。
对象存储空间成本
根据标准存储包的价格,40GB包一年的价格大约为9元钱。
访问流量成本
我们按照一年100GB的下行流量包计算,每年的的成本为441元。按照问题中28KB计算,总共可以访问374万次左右。
按照这种计算方式,总成本大约在450元左右,比部署云主机除了省钱外,还省去你的运维成本。
云开发方式静态托管
我之前在我的个人博客里写过我如何使用腾讯云开发托管我的个人博客,这种方式也推荐使用。如果是纯静态托管,每月免费的容量为1GB,流量为5GB,这么算下来,每个月的可以支持18万次的访问,如果够用的话,完全可以免费了。
3000并发消耗的不光是带宽,CPU和内存你的低配也是扛不住的,文件28K,用Nginx开启gzip压缩可以更小一些,但实际上你的一个邀请涵出现3000并发的可能性真的不是太大。你可以买那种按使用量付费的方式,怕不够用把峰值设的大一些就行了,保证你的帐户里有钱,用多少流量就扣多少钱。
首先把你的静态文件都放oss上,好处是客户端请求时静态资源走oss流量不走服务器的,速度快,然后选择按量付费请求流量费5毛1g。ecs配置2核8g,不用另外买数据盘,使用50m带宽同样选择按量付费5毛1g,足够使用。活动结束直接释放资源节省成本
为什么阿里云宽带费那么贵?
宽带资源比较昂贵,开始购买时先不要买太多,根据实际需要评估用户量和并发量,当业务量上升时再调高带宽。
另一个计费方式是按照流量计费,可以根据业务类型灵活选择。
一般的业务,可以从2M开始,统计了一下四大云服务商的宽带费用,2M带宽的费用基本是每月40元。

