实战架设某网站架构

前言

在2019年初,我参加了一个小组,小组主要负责一个小型图片视频网站,我负责架构/运维,顺带参加了开发组,因此对这个项目了解比较透彻,里面有许多很真实的困境和实战经验,在此特别记录

环境

虽说这个网站是个小型网站,但是日IP仍然达到3k,加上又是图片站,服务器压力肯定不小,不过好在视频源站这方面是由母工作室提供的,这方面不用我们小组操心,清点了一下,目前小组的服务器有以下几台

  1. 主站服务器 1核心1G内存 100GB硬盘 OpenVZ架构 100Mbps 不限制流量
  2. 后端一号服务器 1核心2G内存 60GB硬盘 Hyper-V架构 3Mbps 不限制流量
  3. 后端二号服务器 1核心1G内存 20GB硬盘 OpenVZ架构 100Mbps 2TB流量
  4. 后端三号服务器 1核心1G内存 20GB硬盘 OpenVZ架构 100Mbps 2TB流量

当我拿到这张单后,我心态简直要炸了,这些个玩意怎么优化?

首先分析了一波服务器,发现主站服务器对大陆访问出奇的好,三网均不绕路,24小时ping丢包率为2%
后端一号服务器60G盘只给3Mbps真的没法玩,只能放一些不热门的资源了,网络仅次于主站服务器,可以看。
后端二号服务器网络爆炸,各种丢包,没法玩,盘也小。
后端三号服务器IO爆炸,有图为证。网络电信联通还能看,移动爆炸。

钻石盘

经过商讨,添加了一台服务器,位于新加坡,网络对移动和联通友好,电信绕美不丢包,作为缓存服务器,使用Nginx1.8提供Proxy与缓存的功能,利用1Gbps网络的优势支撑访问流量,20G SSD硬盘全部用于反代的高速缓存,后端全部采用Nginx1.8作为Web引擎,在与缓存服务器连通性测试的表现中均表现良好,基本没有丢包现象,网速均可跑满。
在一波线上测试中,总结出缓存服务器的高速缓存生存时间最好控制在1天以内 推荐18个小时,具体原因不说了,可自行尝试

小插曲

小组内成员对以后的拓展表示怀疑以及缓存服务器是否能承载后端服务器产生怀疑,我相信一定有人也有类似的疑问,在此说明
首先拓展这方面,缓存服务器并不是只允许一台存在,我们可以弄缓存服务器集群,每个缓存服务器负载的后端机器均有限制,一般控制在缓存与存储容量的比例不超过1:10即可
对于缓存服务器的负载能力我还是很有信心的,实际负载是需要在生产环境中验证

封面飞机:F-14 雄猫 战斗机(美利坚)


实战架设某网站架构
http://www.evec.cc/2019/03/11/WebSiteArchitecture/
作者
前夕
发布于
2019年3月11日
许可协议