网站架构–分而治之解决网站瓶颈

先说一句糙理不糙的话,一切不以实际业务为基础的架构都是扯淡。所以在网站架构时,我们首先要考虑的是网站的承载量是多少。
架构的理念是:就是不断找到系统的瓶颈和弱点,采用分而治之、缓存、异步等手段逐渐化解,并平衡处理系统各项要求(性能、安全、可用性、伸缩性、扩展性…)的过程。由此形成了架构。
要理解分而治之,就需要理解都走了那些部分,通常的访问顺序是这样:浏览器发出请求->DNS解析域名->浏览器连接服务器->服务器访问数据库->服务器计算数据结果->返回数据给浏览器。
这样我们就明白了我们网站需要优化的各个部分。每个部分都有增加扩展、分解流量的机会,所以我们的架构就产生了。
先大体说一下各个部分的方案
DNS解析域名,可以智能化解析到不同的地域,不同的服务器区域,就近分配计算资源。

浏览器连接服务器,可以使用负载均衡、反向代理等技术,接入服务器集群,把访问分散到不同的设备上,却可以返回同样的结果。

服务器访问数据库,可以根据数据库读多写少的现象,做读写分离。还可以采用NoSQL应用,缓存热点数据,可以分割业务区块,缓解数据库访问的压力。再后面还可以做访问代理,数据存储集群化。

服务器计算数据结果,可以采用合适的语言和技术,适度缓存数据。可以采用消息队列、RPC,异步处理,平滑访问洪峰。

返回数据给浏览器,系统可以加CDN,静态资源就近访问。可以大力使用浏览器缓存手段,规避不需要的更新和访问需要

白发渔樵

白发渔樵

发表评论

电子邮件地址不会被公开。 必填项已用*标注