Ich versuche zu entscheiden, welche Option ich wählen möchte. (oder eine andere, wenn es besser ist) Dies ist für eine Messaging-App, bei der eine große Anzahl von Benachrichtigungen und Datenbankschreibvorgängen erfolgt.
Option 1 - Google App Engine verwendet Cloud-Endpunkte und Cloud-Datenspeicher
Vorteile:
Nachteile:
Option 2 - Firebase
Vorteile:
Nachteile:
Option - Wäre es möglich, Google Cloud Endpoints und Firebase zu kombinieren?
Schauen Sie sich zunächst die Tabelle hier in den Google-Dokumenten an, um einen guten Vergleich und Kontrast der verschiedenen Backend-Dienste für mobile Apps zu erhalten. Hier ist die Grafik:
Meine persönlichen Meinungen sind (aktualisiert):
Option 1 - Google App Engine mit Cloud-Endpunkten und Cloud-Datenspeicher
Vorteile:
Nachteile:
Option 2 - Firebase
Vorteile:
Nachteile:
Lesen Sie mehr im Link, um sie möglicherweise zu kombinieren.
Ich bin verwundert, dass viele Diskussionen über Firebase (einschließlich der obigen Frage und Antwort) nicht erwähnen, was für mich ein sehr wichtiger Unterschied ist: der Preis.
Hier ist der Firebase-Preis Zeitplan.
Hier sind die Datastore und GAE Preise.
Es kann schwierig sein, diese zu vergleichen, aber meine Interpretation ist, dass Firebase sehr teuer ist.
Und das sollte nicht überraschen. GAE und Datenspeicher müssen mit ähnlichen Diensten von Amazon, Microsoft usw. konkurrieren, und die Konkurrenz ist groß. Ja, diese Dienste sind natürlich nicht so allgemein wie Infrastruktur und SQL, aber sie scheinen nahe genug zu sein, dass die Preise wettbewerbsfähig bleiben.
Firebase hingegen ist ein Premium-Dienst, der mit anderen Back-End-Diensten wie Parse konkurriert, und wenn Sie sich einmal für die Verwendung entscheiden, ist der Wechsel meiner Meinung nach sehr schwierig. Es sollte nicht überraschen, dass Google Firebase so stark vorantreibt - sie werden wahrscheinlich eine Menge Geld damit verdienen, da sie es mit einer solchen Prämie bezahlen können.
Meiner Meinung nach ist das Ergebnis, dass Firebase eine gute Wahl für Dienste mit geringem Volumen und hohen Gewinnspannen ist. Wenn Sie jedoch vorhaben, einen typischen, verbraucherorientierten, werbefinanzierten Dienst zu erstellen, der von einem hohen Volumen abhängt, um Geld zu verdienen Die Kosten von Firebase können Ihren Profit zerstören.
2017-10 Ergänzung :
Ich habe mir Firebase mit der jüngsten Veröffentlichung von Firestore noch einmal angesehen.
Ich denke, es ist wichtig, sich eines anderen Problems bewusst zu sein: Wenn Sie Firestore für eine Android App verwenden, bedeutet dies, dass Sie die Firebase-Clientbibliothek verwenden, die stark von Google Play Services abhängt, für die Sie also keine Bereitstellung durchführen können Geräte, die nicht von Google stammen, einschließlich Amazon Fire-Tablets und (glaube ich) des gesamten chinesischen Marktes.
Eine Sache, die ich kürzlich erfahren habe, als ich darum kämpfe, eine Lösung dafür zu finden, ist, dass Firebase keine Umgehung der Geräte-zu-Geräte-Benachrichtigung bietet. Die Push-Benachrichtigung für Server und Geräte ist recht einfach einzurichten. Aber der frühere Mangel an Funktionen ist sehr wichtig und es gibt eine Verschwörungstheorie, die darauf zurückzuführen ist, dass sie versuchen, Sie dazu zu bewegen, auch andere Google-Produkte zu verwenden.
Oder vielleicht, weil es anfangs nicht entwickelt war, wurde es beibehalten. Ich habe herausgefunden, dass App Engine eine Möglichkeit ist, die Firebase und die Geräte für diesen Zweck zu verbinden, und daher würde ich in diesem Fall eher Firebase und andere Google-Produkte kombinieren App Engine . Wenn Sie vorhaben, mehr Back-End-Prozesse wie die Bildverarbeitung usw. durchzuführen, prüfen Sie App-Engine und Compute-Engine , welche in Firebase integriert werden können, was zu einer hypothetisch leistungsfähigen Back-End-Lösung führt.