为什么大型网站需要那么多服务器

为什么大型网站需要那么多服务器,第1张

所以众多服务器的作用就是两个字——分流

举个常见的例子吧

为什么家用P2P用得太狠机器就断流?因为有并发连接数的限制,不仅路由器(其实也可以视为一台简单的机器)有限制,电脑也有限制,这样就是说,一台机器并非无限制响应所有连接请求的

服务器,顾名思义,就是设计和制作为了“服务”的,里面不会有什么游戏、图形设计等等程序的运行,内存、系统运算等等主要是面向“对外服务”的,所以其并发连接数要比家用电脑大很多,但也不就是说能无限制

然后,连接数包括什么?最简单的计算就是,依据外部请求每读取一个文件都是一个连接,所以,显示一个网页,其实就已经有很多连接——html本身、附带的外部css、外部js、图片、flash……反正越丰富,连接就越多

看一个静态网页,大致会同时产生10~15个连接,很多人一起请求,就倍数增加,上千人同时请求,低端服务器基本就达到并发连接数的极限了,当然,高端的服务器就强点

如果上万人同时请求,网站只能接受一千人,其他九千个请求会被排队,但是排队是有时效的,包括服务器本身会把一直没能响应的超时请求扔掉,以腾空给新连接使用;另一方面,请求者的耐心也是有时效的,现在的人,等几秒不显示,不是刷新(刷新就是另一个请求过程),就是关闭……你做老板都不会这样吧?只做10%的人的生意?而且你要明白,在对九千人排队的时间内,可能已经有第二批、第三批……上万人的请求继续来临,这时候不宕机已经是万幸了

1.首先域名并非直接解析到一个IP上,你可以百度下DNSPOD,就会明白,域名可以根据地域不通解析到不同的服务器IP上。

2.非常多的集群并不是你直接可以访问到的,你所访问到的只是前面一台入口服务器。这台服务器负责转发请求。它可以根据目前后端几台专业服务器的运行状态,将当前你所访问的用户的请求转发到一个比较健康的服务器上面去。这方面的软件有很多,比如Nginx,还有淘宝的Tengine,还有个专业叫LVS。

3.在后端的服务器上每台都放上我们的代码,然后坐等前面的入口转发给我们请求。如果接到请求,我们就进行响应,然后返回给入口,入口再返回给用户,最终呈现在你面前。

4.另外,用户上传的图片之类的动态文件,要么就专门放在文件服务器上,一般需要独立的域名,如http://img1.xxx.com等等,要么就使用Rsync进行实时同步。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/309151.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存