Slashdot 前一段时间搞 10 周年庆典,公布了网站的架构信息(软件、硬件)情况。国内的克隆站点 Solidot 有朋友对此做了介绍。看了之后感觉剩下没有介绍的还有嚼头,也写一篇记录一下。
前面本站介绍 Digg 网站架构的时候说他们只有 100 台左右的机器,Digg 在 Alexa 上排名是 100 名左右,而 Slashdot 大约在 750 多,相比之下,服务器也少多了。Web 服务器有 16 台。操作系统都是 Red Hat 9(比较古老)。Apache 是 1.3 版本,模块包括 mod_perl 和 lingerd(用以提高内存效率). 这 16 台中有一台是面向 https 的。MaxClients 设置都很小,面向动态内容的设置 5-15 ,面向纯静态内容的只有 25。因为瓶颈不在 IO 而在 CPU 上。
Web 服务器 IO 压力不大是因为用了 Pound 作为反向代理与负载均衡服务器,Cache 了大部分 IO 。
Slashdot 比较奇怪的一个地方是 NFS 的利用方式。 Web 服务器都用同样的软件, NFS 服务器输出一个只读的 目录,每台 Web Server Mount 该目录。NFS 服务器后台有任务定期写回。这个实现方式有点意思,看起来似乎 NFS 是个单点–写单点。
数据库有 7 台 MySQL,都运行在 CentOS 4 上。CentOS 是 RedHat Enterprise Server 的克隆版。一直以为是不登大雅之堂的。Slashdot 这次也披露了不少数据层的使用经验,感兴趣的朋友可以点击开头的链接仔细看看。
总的来说,Slashdot 毕竟算是个老网站了,和 Digg 这样的新贵来说,在架构上相对比较保守,但仍有许多东西值得借鉴。
–EOF–
如果瓶颈在CPU上,很好奇,如果把老XEON 2.66的系统全部升级到Intel四核级别,内存加大到16GB的服务器,需要几台能够完成他们现有的工作呢?
CentOS不登大雅之堂, 此话从何说起呢。
CentOS 是很多 RedHat 系又想节约成本的首选,国内好几个大公司都首选它做服务器系统。一方面有 redhat 的技术实力做后盾,有众多的技术人员熟悉它,另一方面还可以节省成本。
个人认为它比其他系统都更“大雅”
感谢提供了这么好玩的文章分析。
NFS的用法确实很好玩,猜想这样便于集中管理吧,改一个配置文件就全OK?同时因为没有敏感业务数据,单点也不怕。
MySQL则有点没太理解明白,他文章里说的意思是一层几台服务器做Master-Slave的分发,然后这几台谁都可以无缝切换为Master,然后在这几台的层次之外在分发出去给另外的二层数据库服务器做只读应用吗?烦请指点。
主(Write)–>Slave(read only,多个)
两种角色可以随时切换