MySpace 系统架构

| 6 Comments

在前不久结束的 QCon 2008 上,MySpace 的首席架构师 Dan Farino 做了题为 Behind the Scenes at MySpace.com (PDF 下载)的技术演讲。

架构概况

超过 4,500 台 Web 服务器,配置为 Windows 2003/IIS 6.0/ASP.NET ;超过 1200 台 Cache 服务器,64 位的 Windows 2003,超过 500 台的数据库服务器,配置为 64 位的 Windows 2003,数据库为 SQL Server 2005 。

之前曾有一篇 揭秘 MySpace 架构的文章,也有中文版本《亿万用户网站MySpace的成功秘密》,请 Google 之!

运维数据收集

其实这个演讲我感觉主要讲的是这个数据收集模块 :) MySpace 的方案倒是让我们看到了在超大规模的 Windows 环境下如何进行数据收集的。

MySpace_OPS.png

每个客户端通过一个 TCP 连接到收集上服务器。收集的信息包括:Windows 性能计数器 Performance Counters、 WMI 对象(定制后的 WMI 对象)、事件日志、 硬件数据等等。收集器服务(Agent) 用 C#实现的,完全的异步 I/O,用了微软的 Concurrency and Coordination Runtime 库。每台主机上一个 Agent。其实国内也有超大规模的 Windows 环境 -- 比如盛大,数据采集和监控的机制倒是类似的。

数据协议用的 Google 的 Protocol buffers。这倒是看到 Google 的这玩意儿公开后第一家大站点在用。也是因为用 Protocol buffers 从而不用 XMPP+ejabberd 的消息处理方案。

QCon 是我非常心仪的技术会议。可惜今年因为客观原因没能组织同事去参加。期待 2009 年在伦敦的会议。

--EOF--

延伸阅读:InfoQ 对 DanFarino 的专访

6 Comments

会后还做了采访:
http://www.infoq.com/interviews/MySpace-Architecture-Dan-Farino

他们居然是从两层的ColdFusion渐变到.NET,很神奇。

BTW,别忘了明年4月还有QCon北京。

讲地这么精简*_*, 那偶去啃PDF去了

这个技术会议值得一去,可惜太远了!没那么多的时间!

北京QCon的时候,茂龙可以来看看。

这个帖子无论如何要顶,因为第一QCon是InfoQ做的,第二里面提到的《亿万用户网站MySpace的成功秘密》文章是当年我组的稿:)

MySpace用CCR做什么呢?


I had the chance to talk to MySpace architects about the CCR a while back (after i found out they where using it), and its exciting to see it applied in other commercial and challenging domains, outside robotics.


http://social.msdn.microsoft.com/Forums/en-US/roboticsccr/thread/c92906c5-79f6-45d2-9d98-bd8bfed76d20/

一直不了解MS系统的大数据量架构,还挺新颖的。不过是否换成LINUX会省很多$呢?哈哈,可爱的M$