Come E’ Fatta L’Infrastruttura di Facebook?
Come E’ Fatta L’Infrastruttura di Facebook?
Se passate le vostre giornate su Facebook e vi occupate di web application, potreste essere interessati a sapere come funziona l’infrastruttura di quello che ormai è il primo social network per volumi di traffico.
Facebook ha tre datacenter, due sulla west coast (San Francisco, Santa Clara) e uno sulla east (Northern Virginia). I server utilizzati sono x86, e il software utilizzato è opensource.
Il datacenter principale è quello di Santa Clara, dove ha sede la società. Il livello più alto, quello web, è costituito da applicazioni scritte in Php.
Il cuore del sistema invece è scritto in C++, Java, Python e Ruby.
La società ha creato adhoc Thrift, un framework che permette ad applicazioni scritte in linguaggi diversi di interagire a vantaggio dell’intero sistema.
Per quanto riguarda i database, Facebook utilizza server Mysql (8-core, come quelli web su cui viene eseguito Apache). Il popolare database opensource riesce tranquillamente a lavorare con 40 TB di dati. Tenete conto comunque che stiamo parlando di 800 macchine…
Dato che però le richieste ricevute sono 15 milioni al secondo, 800 database server non sono sufficienti. Per questo Facebook si avvale di un consistente sistema di caching (memcache, molto diffuso anche in Italia) che permette di rispondere in tempi rapidissmi al 95% delle richieste. “Solo” le rimanenti 500000 vengono inoltrate ai database server (Mysql) veri e propri.
Sempre in California, come abbiamo accennato sopra, c’è un datacenter a San Francisco, che si limita a replicare i servizi web e di caching, ma utilizza gli stessi database di Santa Clara (le località sono vicine, e quindi questo è possibile).
Non è possibile fare la stessa cosa per i server in Virginia, troppo lontani per potere inviare query Mysql quando necessario. La soluzione? Replicare completamente anche i database server.
Per foto, video e contenuti analoghi, esistono appositi server dedicati, sempre nelle tre locazioni che abbiamo elencato.
Disegnare su carta l’infrastruttura server di Facebook è l’incubo di chiunque si occupi di web application. Basti pensare con quale aumento di volumi i sistemisti devono confrontarsi.
Via: Shannon
Il tuo indirizzo IP è 38.107.191.97 - Friday 03rd 2010f September 2010 06:05:13 AM



Scrivi un Commento