In unserer heutigen Zeit, wo die Entwicklung von Apps und Software im Allgemeinen eine extrem wichtige Rolle spielt, ist es notwendig genau diesen Prozess für die Entwickler zu vereinfachen. Ein Programmarchitektur, die sich über die letzte Zeit herauskristallisiert hat, heißt „Serverless Architecture“. Diese Architektur ermöglicht es eine App ohne Serversoftware und Hardware Management laufen zu lassen. Das heißt, dass der Code nur ausgeführt wird, wenn er einen Request erhält und sonst keine Kosten verursacht. Das ist besonders in Real-Time Apps von Vorteil, da man sich nicht um das Management der Ressourcen auf dem Server kümmern muss. Der Entwickler kann also alle Hintergrundservices, wie Database-Management, User authentication, Hosting etc. , seiner Anwendung auslagern.

Zwei große Anbieter in diesem Backend-as-a-Service Bereich sind Google Firebase und AWS Amplify. Im folgenden werden diese zwei „Backend as a Service“ Dienste miteinander verglichen.

Kosten

AWS

Amplify basiert auf dem „Pay as you go“ Kostenmodell. Das heißt, dass Nutzer nur für den Service zahlen, den sie auch wirklich aktiv nutzen. Nach der Anmeldung erhalten Nutzer bei AWS 1000 kostenlose Build Minuten pro Monat, 5 GB Datenspeicher pro Monat und 15 GB bereitgestellt. Dieses Kontingent läuft aber nach dem 12-monatigen kostenlosen Nutzungskontingent ab. Nachdem man das kostenlose Kontingent aufgebraucht hat, tritt die Berechnung auf der „Pay as you go“ Basis ein.

Google

Firebase im Vergleich dazu hat auch ein „Pay as you go“ Kostenmodell ist aber für kleinere Projekte komplett kostenlos. Das heißt, dass man eine bestimmte Anzahl an Requests für beispielsweise den Authentication Service oder eine gewisse Anzahl an GB an freien Speicher im Firestore hat. Alle Nutzungen, die über diese Grenzwerte hinausgehen, werden dann nach dem „Pay as you go“ Modell berechnet.

Benutzerfreundlichkeit und Funktionalitäten

Amplify hat  gegenüber Firebase mehr Funktionalitäten und Features, da AWS an sich älter als die Google Cloud services ist. Somit hat man als Entwickler mehr Spielraum für seine App und ist nicht eingeschränkt durch die fehlende Anzahl an Diensten in der Cloud. Ein Nachteil, der sich natürlich aus der Vielzahl an Möglichkeiten ergibt ist, dass man erstmal das Zusammenspiel dieser Services verstehen muss, bevor man sie in seine App integrieren kann. Ein weiterer Punkt ist, dass Amplify jünger als Firebase ist und deswegen auch die Community vergleichsweise kleiner ist. Das führt dazu, dass es weniger Dokumentationen zu Amplify im Internet gibt und man vieles durch „Learning by Doing“ herausfinden muss. Für komplette Neulinge im App Development oder in der Cloud ist somit der Einstieg in AWS Amplify schwieriger als bei Google Firebase. Dementsprechend ist die Lernkurve für Amplify deutlich höher als für Firebase. AWS Veteranen sind aber mit Amplify gut bedient, da sie sich bereits mit der Infrastruktur und dem Zusammenspiel der Services gut auskennen.

Fazit

Zusammenfassend kann man sagen, dass Firebase deutlich angenehmer für Einsteiger ist, da einerseits die Lernkurve niedriger ist und andererseits die Dienste für kleinere Projekte komplett kostenlos sind. Die große Entwickler-Community von Firebase ist hier ausschlaggebend, weil man zu jedem Problem eine Lösung findet oder in beispielsweise Discord oder Slack Channeln sich mit anderen Entwicklern austauschen kann. Das macht den Prozess der Integration von Firebase deutlich einfacher. Für Leute, die zum ersten Mal mit einem Cloud Service experimentieren wollen, ist Firebase also die bessere Lösung.

Amplify hingegen ist für Einsteiger eher ungeeignet aufgrund der kleineren Community und der mangelnden Dokumentationen. Für größere Projekte ist es aber aufgrund der bereits vorhandenen AWS Infrastruktur besser geeignet. Gegen die Varietät an Funktionen und das Zusammenspiel der einzelnen AWS Diensten kann Googles Cloud Service nicht konkurrieren. Allerdings tritt dieser Fall nur ein, wenn man Entwickler zur Hand hat, die sich wirklich bereits sehr gut mit AWS auskennen, da die Divise „Learning by Doing“ in der AWS Umgebung teuer werden könnte.

Falls ihr die Tools noch einmal genauer anschauen wollt, verlinke ich euch unten die dazugehörigen Blogartikel! 🙂

Links:
Alle Beiträge von Eric Nguyen

Schreibe einen Kommentar