Facebook testa il codice su 2.000 telefoni contemporaneamente

facebook-prineville-data-center

Il data center di Facebook a Prineville, nell’Oregon

Ogni settimana Facebook fa migliaia di cambiamenti al suo codice. Ognuno di essi potrebbe causare funzionamenti anomali nel software di Facebook, impattando sulla raccolta dati, la memoria o la durata della batteria dei telefoni degli utenti. Per questo la società testa il codice su più di 2.000 dispositivi, valutando la risposta di diversi modelli di hardware, sistemi operativi e connessioni di rete.

Partenza in piccolo

facebook-test slittaIn un primo momento, gli ingegneri di Facebook testavano sulle loro scrivanie un solo telefono alla volta. Per accelerare le cose, la società ha costruito la “slitta”, un vassoio che poteva contenere più telefoni. Ma il vassoio di metallo, che a sua volta scorreva in un rack metallico, interferiva con le connessioni Wi-Fi dei telefoni.

La plastica funziona meglio

facebook-test gondolaSuccessivamente, la società ha costruito un rack chiamato “gondola” e realizzato in plastica, un materiale che non avrebbe interferito con le connessioni Wi-Fi. La gondola poteva contenere 100 telefoni, ma i cavi USB collegati ai telefoni si aggrovigliavano.

Dalla California all’Oregon

facebook- test slatwallPoi venne lo “slatwall”, che poteva ospitare 240 dispositivi. Testare contemporaneamente 2.000 telefoni con lo slatwall avrebbe richiesto nove stanze, e presso la sede di Facebook a Menlo Park, in California, non c’era abbastanza spazio. Così le operazioni sono state trasferite al data center di Prineville, nell’Oregon.

Camere isolate

facebook- camere isolamentoInfine, la società aveva bisogno di isolare ciascun rack di telefoni, in modo che le reti Wi-Fi non interferissero con quelle degli altri rack. Questo era necessario per creare un ambiente Wi-Fi consistente ed effettuare prove ripetibili. Facebook ha costruito camere isolate, con fili di rame e un filtro di potenza. Ogni rack può contenere 32 telefoni, oltre a computer che gestiscono installazione, test e disinstallazione delle applicazioni sui telefoni. Per l’iPhone, Facebook utilizza otto Mac Mini, mentre per i telefoni Android utilizza quattro server dell’Open Compute Project Leopard.

Test di controllo remoto

facebook-prineville-testNel centro di Prineville ci sono circa 60 di questi rack. Gli ingegneri che conducono i test possono guardare gli schermi dei cellulari attraverso telecamere montate all’interno dei rack. Una parte delle operazioni di test è automatizzata, e Facebook sta puntando a una maggiore automazione. Attualmente la società sta sviluppando rack che possono ospitare 64 telefoni, tenendo anche conto dei dispositivi con schermi più grandi, e in futuro prevede di rendere disponibile il progetto in open-source.