Klären Sie die Firebase-Verbindungen

Ich bin ein wenig verwirrt über die Firebase Preismodell, besondere Sorge sind die Verbindungen oder genauere gleichzeitige Verbindungen.

Lassen Sie uns ein Beispiel für eine mobile App für iOS namens FanZONE haben:

  • Erhalten Sie Zeitstempel für den Anfang des Tages
  • Android, ImageView über ImageView
  • Senden Sie HTML-E-Mail mit Gmail 6.11.6 mit Absicht
  • Wie kann man benutzerdefinierte Schriftart für eine ganze Anwendung in Android?
  • Google Cardboard VR Sensoren
  • Thread-Updates nicht verfügbar für ausgewählten Client
  • Der Benutzer wird Gruppen während der Fußballspiele erstellen. Sie werden das aktuelle Spiel kommentieren und die Kommentare werden sofort auf jedem Mitgliederbildschirm angezeigt.

    Bedeutet dieses Szenario, dass jeder Benutzer, der am Kommentieren / Betrachten teilnimmt, für eine Verbindung zählt?
    Also, wenn eine Gruppe enthält 100 Benutzer, die aktiv folgen dem Bildschirm und von Zeit zu Zeit Kommentar gibt es 100 Verbindungen jeweils 90 Minuten lang?
    Was ist mit Benutzern, die die App im Hintergrund haben und die App überprüft alle 5 Minuten die Punktzahl. Ist diese Verbindung auch 90 Minuten lang oder nur ein Bruchteil der Zeit alle 5 Minuten?

  • Gibt es eine Größenbeschränkung für Android Market Downloads?
  • Verwenden des neuen Telephony Content Providers zum Lesen von SMS
  • Welche Größe sollte das Symbol in einem Alertdialog sein?
  • ConnectedAndroidTest und Release Build-Typ
  • Dolch 2 Custom Scope für jedes Fragment (oder Aktivität etc ...)
  • IsValidFragment Android API 19
  • 2 Solutions collect form web for “Klären Sie die Firebase-Verbindungen”

    In deinem ersten Szenario – die kurze Antwort ist ja. Solange deine Benutzer den Bildschirm an der Stelle haben, wo du eine Firebase-Verbindung hast, die es ihnen erlaubt, Kommentare zu kommentieren / zu lesen – du hast eine gleichzeitige Verbindung pro Bildschirm.

    In deinem zweiten Szenario – das hängt davon ab, wie du deine App entwickelst. Die Firebase-API bietet Ihnen die goOffline- und goOnline- Methoden ( https://www.firebase.com/docs/ios-api/Classes/Firebase.html#class_methods ), die Ihnen die Kontrolle über Ihre Verbindung geben. Wenn du für 5 Minuten offline gehst, dann kommst du kurz wieder online, um die Scores zu überprüfen und dann wieder offline zu gehen, dann hättest du nur eine kurze Zeit für eine kurze Dauer.

    Gleichzeitige Verbindungen sind genau das – Verbindungen zur gleichen Zeit hergestellt. Also, wenn du 3 Leute hast, die deine App verwenden, um die Scores zu überprüfen, aber die App des Benutzers 1 geht um 12:00 Uhr online und die Verbindung dauert 5 Sekunden, dann geht die App des Benutzers 2 um 12:01 Uhr für 5 Sekunden und User 3's online App geht online um 12:02 Uhr für 5 Sekunden dann hast du nur jemals eine gleichzeitige Verbindung gehabt.

    Wenn auf der anderen Seite alle 3 User-Apps um 12:00 Uhr für 5 Sekunden online gehen, dann haben Sie 3 gleichzeitige Verbindungen.

    Sie könnten diese gleiche goOffline / goOnline-Strategie mit Ihrem ersten Szenario nutzen, aber das kann die Erfahrung beeinträchtigen, wenn Ihre Benutzer erwarten, über ein Spiel in der Nähe von Echtzeit zu chatten.

    Neben der hervorragenden Antwort von Mike P gibt es hier noch ein paar Diskussionen zum Thema, die sich als aufschlussreich erweisen können.

    Von der Preisliste von Firebase:

    Was ist eine Verbindung?

    Eine Verbindung ist eine offene Netzwerkverbindung zu unseren Servern. Es ist ein Maß für die Anzahl der Benutzer, die Ihre App oder Website gleichzeitig verwenden. Dies ist nicht das gleiche wie (und ist in der Regel viel niedriger als) die Gesamtzahl der Besucher auf Ihre Website oder die Gesamtzahl der Nutzer Ihrer App. In unserer Erfahrung entspricht 1 gleichzeitig etwa 1.400 Monatsbesuchen.

    Unsere Entwicklung Firebase hat eine harte Grenze für die Anzahl der Verbindungen erlaubt. Alle bezahlten Firebases sind jedoch "platzen", was bedeutet, dass die Nutzung nicht begrenzt ist und stattdessen Sie für irgendwelche Überhebungen in Rechnung gestellt werden. Wir messen Verbindungen für bezahlte Pläne auf der Grundlage der 95. Perzentil der Nutzung während des Monats.

    Aus dieser Mailingliste Diskussion , von Andrew Lee (Firebase Gründer):

    Ich empfehle Ihnen dringend keine Sorgen darüber, es sei denn, Sie sind tatsächlich gegen unsere Grenzen stoßen … die meisten Entwickler überschätzen die Anzahl der gleichzeitigen Benutzer, die sie haben werden. Eine gute Faustregel ist 1 gleichzeitige = 1000 monatliche Besuche für die typische Website. Für das Handy ist das Verhältnis zwischen Installationen und Konflikten manchmal sogar noch höher (obwohl es je nach Anwendungsfall erheblich variiert). Unsere Pläne sind sehr großzügig, wenn es um gleichzeitige Benutzer geht. Als Datenpunkt – unsere eigene Website könnte bequem auf dem "freien" Firebase-Plan die meisten Tage betreiben. In der Tat, mehr als 99,5% aller Firebases nie die 50 gleichzeitige Grenze.

    Also, lange Geschichte kurz, wenn Sie an einem Hobby-Projekt arbeiten, werden Sie fast sicher nicht unsere freie Tier-50-gleichzeitige Grenze treffen. Wenn Sie ein Geschäft oder eine größere App sind, hoffe ich, dass Sie unseren $ 49 / Monat Plan kostengünstiger als Ausgaben Engineering Zeit finden, um herauszufinden, wann goOnline / goOffline, um diese Zahl zu minimieren.

    Am sehr hohen Ende (riesige Enterprise-Apps mit 10k + Konflikten) bieten wir eine kundenspezifische Preisgestaltung an, die eine niedrigere pro-zeitliche Rate hat.

    Ein Benutzer Benchmarking und Testen von Verbindungen hier auf SO: Wie die Verbindung in Firebase berechnet wird

    Eine weitere ähnliche Frage hier auf SO: Wie werden gleichzeitige Verbindungen berechnet

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.