QNA > P > Perché È Stato Scelto Erlang Per La Chat Di Facebook?

Perché è stato scelto Erlang per la chat di Facebook?

Mentre ero al college ho fatto un prototipo di un sito web di chat. Ho scritto il lungo server di polling in Erlang perché mi sembrava il linguaggio ideale per il compito e anche per divertirmi a imparare un nuovo linguaggio.

Ho poi lavorato sul prototipo iniziale della chat di Facebook come parte di un progetto hackathon all'inizio del 2007, insieme a Rebekah Cox e Ari Steinberg. Ho riutilizzato parte del codice Erlang del mio progetto personale. Quando abbiamo deciso di renderlo un progetto ufficiale e di produrre il codice del server, il team ha deciso di rimanere con Erlang e ha preso il codice da lì.

La logica era qualcosa del tipo:

  • Abbiamo già un prototipo funzionante da cui partire.
  • Erlang è bravo a tenere una tonnellata di connessioni aperte, che è la parte più difficile di un servizio di chat.
  • Erlang è facile da imparare, anche se pochissimi ingegneri lo conoscono già.


L'ultimo punto, la mancanza di competenza, è una vera debolezza del linguaggio, ma è stato superato da altri fattori in quel momento. Alla fine ha contribuito alla decisione di Facebook di spostare il servizio in C++, anche se, pur sapendo che alla fine sarebbe stato riscritto, penso sia stata la scelta giusta per la versione iniziale a causa delle risorse limitate che avevamo all'epoca. Probabilmente è stata la scelta giusta anche per WhatsApp per lo stesso motivo.

Vedi la risposta di Ben Maurer's a Quando Facebook ha smesso di usare Erlang per Facebook Chat? Qual era il motivo? Con che cosa l'hanno sostituito? per maggiori dettagli sul perché Facebook ha poi cambiato.

Di Mariel Camus

How to check if a port 1433 is open :: Qual è la differenza funzionale tra ARP, DHCP e DNS?
Link utili