2016-06-04 14 views
5

Sono curioso di sapere qual è l'implementazione interna degli ascoltatori di Firebase?Listener poco costoso per Firebase

Ho sentito ingegneri Firebase dicendo ascoltatori Firebase sono poco costosi da usare e può essere utilizzato come molto richiesto. Mentre sono d'accordo che fanno l'app in tempo reale. Cosa succede se ho un gruppo di ascoltatori di basi di fuoco nella mia app (un gioco di scacchi in tempo reale che gioca per più utenti.)

Gli ascoltatori stanno ascoltando un sacco di azioni, incluso quando una mossa è fatta da un giocatore in una partita o quando viene avviato un nuovo gioco. Facile immaginare la scala se ho centinaia di migliaia di utenti che utilizzano l'applicazione contemporaneamente ogni giorno.

Come funziona Firebase gestire così tante richieste sul loro server dal momento che hanno dato il potere di ascoltatori per l'utente finale.

possiamo avere il maggior numero di ascoltatori che vogliamo nella nostra app Firebase. Quanto è economico?

Per favore correggimi se ho torto nelle mie supposizioni inerenti.

risposta

5

Firebase utilizza WebSockets, che è una connessione permanente al server. Ciò significa che non devi preoccuparti di fare una richiesta, perché l'unica richiesta HTTP che viene fatta è proprio all'inizio per stabilire il socket. Here è più informazioni sui socket Web che è un protocollo diverso da HTTP. Quindi nel tuo caso è completamente fattibile fare molte "richieste" separate per i dati, perché non ci sono veri e propri overhead da considerare. La radio del dispositivo è già attiva e un'intestazione WebSocket ha solo 6 byte.

+0

Penso che la domanda sia piuttosto su come il server sa quali dati inviare a ciascun client (almeno questa è la risposta che la mia curiosità sta cercando). Non riesco a immaginare un'implementazione di questo che è poco costoso (in termini di velocità e memoria). –