Facebook宣布釋出已應用在該站的分散式快取技術mcrouter為開放源碼,以方便其他需要擴充快取規模的網站業者能利用Facebook的知識滿足相關需求。

Facebook表示,絕大多數的網路服務都是由前端應用程式伺服器與資料庫組合而成,隨著服務的擴大,可利用快取(Cache)來儲存經常存取的資料以強化資料庫並改善服務效能。快取的地位從一開始只是用來最佳化,逐漸演變成許多大型網站的必要功能,包括Facebook、Twitter或Reddit都於資料庫中嵌入了快取技術。

mcrouter是Facebook於去年發表的技術,這是一個可將快取轉成分散式系統的軟體,讀音為mick-router,為基於分散式高速快取系統(memcached)協定的路由器,已是Facebook與Instagram快取架構的核心元件,Facebook使用mcrouter來處理全球資料中心數十個叢集分散式系統上的數千個快取伺服器之間的流量,印證它能夠大規模地運作,mcrouter在高峰時期每秒可處理接近50億個請求。

根據Facebook所描述的mcrouter架構,它把分散式高速快取(memcached)主機視為目的地,並有一個聚集多個主機的pool,客戶端可透過mcrouter存取一個或另一個pool中的memcached主機,眾多pool即能組織成多個叢集。

在部署mcrouter時,路徑與功能是由客戶端決定,因此客戶端可以簡單地透過mcrouter以基於memcached協定的TCP連結與主機通訊,客戶端幾乎不需要修改就能使用mcrouter。

Facebook已於Github釋出mcrouter原始碼,採用BSD開放源碼授權。(編譯/陳曉莉)

 

熱門新聞

Advertisement