之前经常有人问,我网站每天得几千万PV,服务器你看买什么,我总说,5千左右的1U足够了,对方失望之情溢于言表,好像是在说:我的站怎么也得衬个10几万的服务器啊…
实际上,目前aleax700的站不过两台服务器,我目前排名1w的站是一台3.5k买的二手1U,跑了几年load一直是0.5,google的部分运算也是依靠廉价pc机。
目前硬件的发展速度,CPU已经非常快了,(一些动态语言,比如PHP,则是吃CPU大户)应使用软件架构,负载均衡方案来解决负荷,而不是靠一颗强壮的“心”但实际上能这样做的很少,在网站业务逻辑复杂,交互频繁的情况下,更多的是使用硬件来弥补软件设计方面的不足,“幸运”的是有太多这种“弥补”方案可以选择,只要愿意掏钱,主意总是有,问题总是能解决,解决方法是否合理没有人在乎。比如“静态化”页面,避免运算压力将所有页面生成.html页面,靠大硬盘,再比如使用F5之类的负载均衡硬件设备,后面多台运算服务器,避免宕机和单服负担过高,实际上这些在目前都可以使用软件来解决。
从稳定方面来讲,在合理的raid与备份策略情况下,普通服务器与高价品牌服务是几乎没有差别的我相信没有任何一个网站,哪怕再小也不会认为自己的数据不重要,所以备份策略比信赖所谓的高价品牌更重要,当然这么说肯定会有人认为自己装的服务器就是比高价专业服务器死机多,容易坏,反正是靠备份,实际的情况并不是这样,就我个人10几年的经验来讲,用品牌机和普通服务器出问题机率是一样的,非软件问题,纯硬件出现故障是非常少的。(最容易出问题的是硬盘,其次则是网卡)
上面的这些只是在说我一直以来所坚信,并且也是自己一直在这么做的事情,但这并不是我写这篇文章的原因,我没有理由去写一篇东西来证明自己的正确性,反而是我认为我的观点在某种角度来讲是错的,我认为这可以从心理学角度方面来分析,并且可以联系的很多,
比如一个拿刚拿到VC几千万的新公司,你跟投资人讲我们服务器是3000块钱买的,好使,刚刚地,你觉得你会不会被抽?你觉得你会不会被认为不靠谱、不可靠?
再比如,你跟一个CEO讲,你们网站结构设计并不合理,在硬件方面你们的成本至少可以降低50%,并且访问速度可以比现在提高2倍,你觉得这个CEO会不会认为你无知,不了解具体情况的信口开河?硬件成本在公司运营成本来说通常只是比较小的一部分,并且公司已经持续负担此成本很久,里面各种与IDC,硬件销售商之间回扣等各种利益纠葛你又是否知道?目前的互联网企业,哪怕把人裁光,也不会考虑在硬件方面削减成本,省不了多少是其一,其二是这方面带来的人力成本会更高。
用更少的钱,做出最快的网站,这的确不是目前技术人员的竞争优势,目前行业的整体水平还是停留在功能实现上,不重设计,因为没人懂,没人了解,没人审核,只靠开发人员自觉,并且几乎全部互联网企业愿意使用硬件,用钱来解决设计的问题,在这种环境下,在帮助别人购买服务器而更应该给一个“合理”的价格,而不是个人所认为“正确”的
BTW:我个人是追求极限性能爱好者,组装6路SSD高性能服务器也是我的兴趣,不过在合理的设计架构下,这些能带来的性能提升非常小,在原来10ms运算下最多提升至7~8ms,这个首先因为目前写的的程序无法利用到多核心运算,最近几年单路CPU性能提升很小,二是因为在raid+cache情况下本身就是内存运算,SSD带来的提升也并不高,所以对于性价比来讲,这样做并不合适
我这篇文章不是技术文,而是自我检讨,在目前这种互联网形势一片大好大家都愁没地方花钱的时候唱反调,说节约成本,的确是逆时代潮流不合时宜的行为。