网站有高人气是好事,证明被全球越来越多的网民所认可和了解。但是每天都有成万上亿的点击量,对服务器这个铁疙瘩来说肯定是一个不小的挑战,那么我们在优化服务器的时候要遵循哪些原则呢??


1)和前端人员密切合作

作为一个团队,有了前端人员的辛苦成果,顾客们可以看到各种风格的网页,但是前端人员毕竟不是万能的,但是我们可以要求开发人员“合并CSS,合并背景图片,同时尽可能少的去让mysql查询,尽可能的不要让CPU去做浮点运算”。


2)利用好nginx的expire功能

对于客户的查询请求,原则就是“能用缓存就用,查询是越少越好”,但是nginx里的expire数字也不能设置的太过放肆,要适可而止。


3)如果可以,利用cdn来响应请求

cdn是一个有钱人的玩意,但是他真的很强势。他可以用别的服务器来为你服务,甚至根据你的访问特性给你分配不同的服务器。这也是一个负载均衡。


4)高并发的服务器请关闭iptables

iptables是一个好东西,它作为一个防火墙保护了服务器的安全,但是iptables是高并发访问的敌人,当有很多用户同时访问服务器的时候,它会把不少用户拒之千里之外。那么对于这种情况直接就#service iptables stop,但是有人会说,那没有了防火墙,服务器岂不是在裸奔?


没有了系统的防火墙,那就买一个硬件的防火墙。要记得对于高并发服务器来说,服务器就做服务器,不要兼职还当别的东西,太耽误性能,影响用户体验。


5)重视服务器集群

当然说来说去,最后的大招还是我们自己,那就是“服务器集群+负载均衡”。这台服务器装MYSQL,那台服务器装PHP,再买一个当前台服务器当NGINX,这三个通力合作,把客户的请求好好接待。均衡就不用说了,让购买的每一个服务器都参与进来,平均分配工作内容,平摊工作压力。最理想的状态就是每台服务器的性能都被充分的利用,下面这个图就是常见的服务器集群,麻雀虽小,但是五脏齐全,哪怕都是家用的电脑级别,装上对应的软件,依旧可以应付日常2000万左右的PV量。


wKioL1c19i2R-JauAACkUoi0qic513.png


6)有针对性的选择服务器

服务器说白了就是电脑,只不过是功能性更强的电脑,比家用的电脑更高级一些,但是说来说去也离不开CPU,内存,硬盘容量这几个指标,那么我们要针对提供不同的业务,选择有特殊长处的服务器。


比如上面的A服务器,主要做Mysql,也就是数据存储,这种服务器CPU不用特别的伟岸,但是硬盘容量一定要够大,最好是机械硬盘,转的快。如果有些服务器上进程比较多,动不动就跑100、200个php进程,那么就选择内存强的服务器。而中心的服务器的CPU要强悍,能做大规模的浮点运算,而且善于压缩。视频服务器也是需要CPU强悍的,因为大量的视频都要压缩的。