學(xué)習(xí) Flickr 的 基于 LAMP 的容量規(guī)劃經(jīng)驗(yàn)
讓我們來(lái)看看現(xiàn)在學(xué)習(xí)的產(chǎn)物:Flickr 和LAMP
最近其實(shí)發(fā)現(xiàn)了不少可以和大家一起學(xué)習(xí)的好內(nèi)容。Flickr 的 John Allspaw 在 MySQL Conf 2007 作了一個(gè)題為 Capacity planning for LAMP (下載PDF文件) 的技術(shù)報(bào)告,說(shuō)起容量規(guī)劃,多少有點(diǎn)空對(duì)空的意思,不過(guò)這個(gè) PPT 還是介紹了不少 Flickr 的網(wǎng)站運(yùn)維經(jīng)驗(yàn)。
Flickr 的數(shù)據(jù)量的確越來(lái)越驚人了,根據(jù)文檔中透漏的數(shù)據(jù):
Squid Cache 中共有 3500 萬(wàn)張圖片;
在 Squid RAM 中有 200 萬(wàn)張圖片;
4.7億的圖片,每張圖片有4到5種尺寸;
每秒鐘 38000 個(gè)到 memcached 的請(qǐng)求;
2 PB 裸存儲(chǔ)容量(周日需要消耗1.5T 的空間)
三個(gè)主要步驟:
計(jì)劃
基于實(shí)際業(yè)務(wù),而不是抽象的理論。John Allspaw 認(rèn)為基準(zhǔn)測(cè)試(Benchmark) 作用并不大,這一點(diǎn)我也很贊同。在業(yè)務(wù)頻繁變化的環(huán)境中,Benchmark 根本不能與實(shí)際業(yè)務(wù)情況匹配。
部署
Flickr 使用SystemImager/SystemConfigurator(自動(dòng)化安裝、軟件分發(fā)),CVSup(網(wǎng)絡(luò)中的文件分發(fā)、更新),Subcon(配置管理工具)提高部署效率。
度量(圖形化展現(xiàn))
Flickr 使用了 Ganglia 來(lái)進(jìn)行容量數(shù)據(jù)的展現(xiàn)。Ganglia 最初設(shè)計(jì)是用于高性能集群計(jì)算的監(jiān)控上面,也是以 RRDTool 為基礎(chǔ)來(lái)進(jìn)行圖形展示。Ganglia 最主要的優(yōu)點(diǎn)還是管理的方便性: Client/Server 結(jié)構(gòu), 各自跑 Demon 進(jìn)行數(shù)據(jù)交互(XML形式)。相比起來(lái), Cacti + Collectd 需要進(jìn)行很多手工配置,在面對(duì)大量需要監(jiān)控的主機(jī)的時(shí)候的確不那么方便。
Web 2.0 站點(diǎn)的運(yùn)維似乎大家都在摸索著走。期望這次阿里巴巴組織的俠客行大會(huì)上也有有朋友坐下來(lái)聊聊這個(gè)話(huà)題(Flickr 的架構(gòu)師本來(lái)可以來(lái)的,因?yàn)闀r(shí)間的問(wèn)題不能成行,挺遺憾的)。
通過(guò)文章,我們學(xué)習(xí)到了不少關(guān)于LAMP和Flickr方面的知識(shí),希望大家喜歡!
【編輯推薦】
- Redhat Linux AS4下的LAMP與Discuz裝置
- lamp solutions
- LAMP的安裝和配置講解
- node.js、MongoDB下一代的LAMP
- 確保安全使用LAMP開(kāi)源開(kāi)發(fā)工具的四步曲
- Linux將繼續(xù)留在LAMP中
- 當(dāng)開(kāi)源LAMP遭遇WindowsAMP