在 NSDI '13 上 Facebook 的工程師有講到 Facebook 內的 Memcache 的架構:「Scaling Memcache at Facebook」,有影片可以看,也有 PDF 投影片可以下載。
其實 2013 年這次的 conference 提到的架構以前就有提過了... 雖然一時間找不到之前提到架構的投影片,但還是可以配合著以前提到各種架構的文章與投影片看出 Facebook 怎麼利用 Memcache 架構 cache layer:
- 2007 年的「Largest production memcached install?」
- 2008 年的「Scaling Out」。
- 2008 年的「Caching Performance Lessons From Facebook」。
- 2008 年的「Scaling memcached at Facebook」。
- 2010 年在 QCon 的「memcache@facebook」 (PDF)。
- 2013 年的「McDipper: A key-value cache for Flash storage」。
Facebook 會這樣設計 Memcache 架構,跟 Facebook 用 PHP 的方式有關,是在 PHP 的限制下想辦法爭取效率的作法。
不過這些投影片裡的資料畢竟是有年代了,現在的 memcached 改善了很多,跟當年的情況不太一樣,看之前的投影片最好知道當時 memcached 有哪些問題會比較能理解 Facebook 的工程師們想要解決什麼問題。