Secondo me la cosa è più semplice di quanto pensi.
Non so come è organizzato fb ma ti posso parlare di come funziona active directory e di come farei io.
Ad esempio un computer conosce quali sono i vari server di active directory. Se ne scieglie uno e lo usa per autenticarsi. I server tra di loro di sincronizzano.
Per evitare di inviare tutti i dati su tutti i server dividerei i dati per categorie e magari nel gruppo farei un po' di ridondanza. Userei dei server di front end che data la connessione, smistino il traffico verso i gruppi più liberi e facendo solo da bridge possono sopportare un grande carico.