Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Die Backend-Entwicklung ist ein komplexer und kostspieliger Prozess. Bei der Entwicklung mobiler Anwendungen wird dieser oft unangemessen mehr Aufmerksamkeit geschenkt. Dies ist ungerechtfertigt, da jedes Mal typische Szenarien für mobile Anwendungen implementiert werden müssen: Push-Benachrichtigung senden, herausfinden, wie viele Benutzer an der Aktion interessiert sind, eine Bestellung aufgeben usw. Ich möchte eine Lösung, die es Ihnen ermöglicht, sich auf die für die Anwendung wichtigen Dinge zu konzentrieren, ohne dass bei der Umsetzung zweitrangiger Dinge Qualität und Details verloren gehen. Und es gibt Lösungen!

Solche Dienste werden Mobile Backend-as-a-Service (MBaaS) genannt. Die Prozesse zur Erstellung eines Backends mit ihrer Hilfe werden im Vergleich zur „manuellen“ Entwicklung vereinfacht. Dies sind die Einsparungen bei der Einstellung eines separaten Backend-Entwicklers. Und die Tatsache, dass sich der MBaaS-Anbieter um alle Probleme im Zusammenhang mit Serverstabilität, Lastausgleich, Skalierbarkeit und anderen Infrastrukturschwierigkeiten kümmert, gibt Vertrauen in die Qualität des Ergebnisses und ist der Hauptvorteil solcher Dienste.

In diesem Artikel betrachten wir mehrere große und bewährte Dienste: Microsoft Azure, AWS Amplify, Google Firebase, Kumulos.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Die Punkte, nach denen wir die Dienste betrachten werden: die Funktionalität des Backends und der Analyse, die Komplexität der Integration des Dienstes, die Zuverlässigkeit und Stabilität der Arbeit sowie die Preispolitik. Lassen Sie uns jeden Dienst durchgehen und seine Funktionen anhand dieser Kriterien notieren.

Microsoft Azure

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Microsoft Azure - Infrastructure-As-A-Service (IaaS) ist ein Dienst, der vollwertige BaaS-Funktionalität enthält und bei der Erstellung eines Backends für mobile Anwendungen hilft.

MBaaS

Microsoft Azure verfügt über alle Funktionen zum Erstellen eines Backends für eine mobile Anwendung. Verarbeitung von Push-Benachrichtigungen, automatische Skalierung, Datensynchronisierung, Social-Media-Integration und mehr.

Ein wichtiges Merkmal von Azure ist der geografische Standort der Server. Sie befinden sich in 54 Regionen der Welt, was die Wahrscheinlichkeit erhöht, einen Server auszuwählen, der hinsichtlich der Latenz zu Ihnen passt. Da bei einer Störung am häufigsten nur bestimmte Regionen leiden, kann davon ausgegangen werden, dass es umso unwahrscheinlicher ist, dass es sich um die sehr „instabile“ Region handelt, je mehr Regionen es gibt. Microsoft behauptet, mehr Regionen zu haben als jeder andere Cloud-Anbieter. Das ist definitiv ein Plus.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Analytics

Der Dienst bietet die Möglichkeit, die Leistung von Anwendungen in Echtzeit zu überwachen und Berichte über „Ausfälle“ zu sammeln. Dadurch können Sie das Problem sofort lokalisieren und lösen.

Außerdem können Sie in Azure eine eigene Bibliothek verwenden, um Analysen in Anwendungen zu sammeln: Sammeln Sie grundlegende Metriken (Geräteinformationen, Sitzungsinformationen, Benutzeraktivität usw.) und erstellen Sie benutzerdefinierte Ereignisse zur Nachverfolgung. Alle gesammelten Daten werden sofort nach Azure exportiert, sodass Sie damit in einem praktischen Format analytische Arbeiten durchführen können

Zusätzliche Funktionalität

Es gibt auch interessante Funktionen wie das Testen von Anwendungs-Builds auf realen Geräten, CI/CD-Einstellungen zur Automatisierung des Entwicklungsprozesses und Tools zum Einreichen von Anwendungs-Builds für Betatests oder direkt an den App Store oder Google Play

Mit Azure können Sie ein sofort einsatzbereites Framework verwenden, das für die Arbeit mit Karten und Geodaten entwickelt wurde, was die Arbeit mit diesem Format erleichtert.

Von besonderem Interesse ist die Möglichkeit, Probleme mithilfe von zu lösen künstliche Intelligenz, mit dem Sie verschiedene analytische Indikatoren vorhersagen und gebrauchsfertige Tools für Computer Vision, Spracherkennung und vieles mehr nutzen können.

Komplexität der Integration

Der Microsoft Azure-Dienst bietet SDK für große mobile Plattformen (iOS und Android) und, was selten vorkommt, für plattformübergreifende Lösungen (Xamarin und PhoneGap). 

Im Allgemeinen beschweren sich Benutzer über die komplexe Benutzeroberfläche und die hohe Eintrittsbarriere. Dies weist auf mögliche Probleme bei der Integration des Dienstes hin. 

Es ist wichtig zu verstehen, dass eine hohe Eintrittsschwelle kein Sonderfall bei Azure ist, sondern ein generelles Problem für IaaS. Auch Amazon Web Services, auf die wir als nächstes eingehen, ist beispielsweise noch anfälliger für diese Krankheit.

Zuverlässigkeit

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Die Stabilität des Dienstes von Microsoft sieht ordentlich aus. Es ist erkennbar, dass es in verschiedenen Regionen mindestens einmal im Monat zu kurzfristigen Problemen kommen kann. Dieses Bild spricht für die ausreichende Stabilität des Dienstes. Probleme treten in bestimmten Regionen selten auf und werden äußerst schnell behoben, sodass der Dienst eine angemessene Betriebszeit aufrechterhalten kann. 

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Dies wird durch die Liste der jüngsten Vorfälle auf Azure-Servern bestätigt – die meisten davon sind kurzfristige Warnungen, und der letzte Ausfall der Server war Anfang Mai. Statistiken bestätigen das Bild eines stabilen Dienstes.

Kosten

В Preispolitik Microsoft Azure bietet für den Dienst unterschiedliche Zahlungstarife an, es gibt auch einen kostenlosen Tarif mit gewissen Limits, der zum Testen ausreicht. Es ist wichtig zu bedenken, dass es sich bei Azure um einen IaaS-Dienst handelt, bei dem es bei den meisten aufgrund ihrer Besonderheiten und der Komplexität der Berechnung verbrauchter Ressourcen schwierig ist, die Arbeitskosten vorherzusagen. Viele stehen vor Schwierigkeiten und oft sogar vor der Unfähigkeit, die genutzte Kapazität richtig zu berechnen. Die tatsächliche Rechnung kann erheblich von der erwarteten abweichen. 

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Darüber hinaus verfügt Azure zusätzlich zu diesen Plänen über separate kostenpflichtige Dienste: App Service Domain, Azure App Service-Zertifikate und SSL-Verbindungen. Sie beziehen sich alle auf die Verwaltung Ihrer Infrastruktur, wir gehen nicht näher darauf ein.
In vielen Rezensionen beschweren sich Nutzer über die komplexe Preispolitik und die Unfähigkeit, die Kosten des Dienstes vorherzusagen. Der von Microsoft vorgeschlagene Rechner wird als nutzlos bezeichnet und der Dienst selbst ist extrem teuer.

Fazit für Azure

Der Azure-Dienst von Microsoft ist ein funktionales und stabiles Tool für den Einsatz als Haupt-MBaaS-Anbieter. Dadurch, dass der Dienst zunächst eine vollständige Infrastruktur bereitstellt, eröffnen sich viele Möglichkeiten zur Weiterentwicklung Ihres Backends über mobile Anwendungen hinaus. Eine große Anzahl von Servern und eine große Anzahl an Regionen, in denen sie sich befinden, hilft Ihnen bei der Auswahl der richtigen Latenzzeit. Positive Nutzerbewertungen bestätigen dies. Zu den negativen Punkten zählen eine hohe Eintrittsschwelle und die Schwierigkeit, die Kosten der Dienstleistung vorherzusagen.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Passt? Folgen Sie diesen Links, um Microsoft Azure genauer kennenzulernen, alle Details zu erfahren und mit der Nutzung zu beginnen: 

AWS verstärken

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Amazon Web Services (AWS) ist das zweite IaaS, das es in unsere Auswahl geschafft hat. Es stellt eine große Anzahl von Diensten dar und ist interessant, weil es in Analogie zu Microsoft Azure über einen dedizierten Funktionsumfang namens „ AWS verstärken, das im Wesentlichen das mobile Backend ist. Vielleicht haben Sie schon einmal den Namen AWS Mobile Hub gehört, der seit langem der Hauptdienst ist, der MBaaS-Funktionalität bereitstellt. Wie schreiben Amazon selbst, Amplify ist ein überarbeiteter und verbesserter Mobile Hub, der die Hauptprobleme seines Vorgängers löst.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Laut Amazon genießt Amplify das Vertrauen vieler großer Unternehmen, darunter Netflix, Airbnb und viele andere.

MBaaS

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Mit der mobilen Lösung von Amazon können Sie schnell alle notwendigen Funktionen für eine mobile Anwendung konfigurieren. Ob es um Serverlogik, Datenspeicherung, Benutzerautorisierung oder Inhaltsverarbeitung und -bereitstellung, Benachrichtigungen und Analysen geht. 

Auch in Sachen Infrastruktur stellt Amazon alle notwendigen Voraussetzungen wie Skalierung, Lastverteilung und mehr bereit.

Analytics

Für die Analytik ist ein eigener Dienst zuständig Amazon-Pinpoint, wo Sie die Zielgruppe segmentieren und groß angelegte Targeting-Kampagnen über verschiedene Kanäle (Push-Benachrichtigungen, SMS und E-Mail) durchführen können, um Benutzer für den Dienst zu gewinnen.

Pinpoint liefert Echtzeitdaten. Sie können dynamische Zielgruppensegmente erstellen, deren Engagement analysieren und Ihre Marketingstrategie basierend auf diesen Daten optimieren.

Zusätzliche Funktionalität

Amazon Amplify bietet Zugriff auf den Dienst AWS-Gerätefarm um Builds Ihrer Anwendungen auf realen Geräten zu testen. Mit dem Dienst können Sie parallel automatisierte Tests Ihrer Anwendungen auf verschiedenen physischen Geräten durchführen. Manuelle Tests sind ebenfalls verfügbar.

Service AWS Amplify-Konsole ist ein Tool zum Bereitstellen und Hosten von Serverressourcen und Webanwendungen mit der Möglichkeit, CI/CD zu konfigurieren, um den Entwicklungsprozess zu automatisieren.

Ungewöhnlich ist auch die Möglichkeit, Sprach- und Textbots „out of the box“ als Schnittstelle für die Benutzerinteraktion in mobile Anwendungen einzuführen. Es funktioniert mit dem Dienst Amazon Lex.

Interessanterweise bietet AWS Amplify auch eine kleine Bibliothek vorgefertigte UI-Komponenten für Ihre React Native-Anwendung, die als leichte Beschleunigung des Entwicklungsprozesses dienen oder in einem Prototyp oder MVP Ihres Projekts verwendet werden können.

Komplexität der Integration

Amazon Amplify bietet ein SDK für iOS, Android, JavaScript и React Native und ziemlich detailliert. Dokumentation. Es ist wichtig zu beachten, dass der Dienst neben REST auch GraphQL unterstützt.

Wie im Azure-Analyseprozess erläutert, ist eine hohe Eintrittsbarriere ein häufiges Problem für alle IaaS. Amazon ist keine Ausnahme, ganz im Gegenteil. Dies ist wahrscheinlich einer der am schwierigsten zu verstehenden Dienste. Dies liegt an der großen Anzahl unterschiedlicher Tools, über die AWS verfügt. Das Erlernen von AWS von Grund auf wird viel Zeit in Anspruch nehmen. Wenn Sie sich jedoch nur auf Amplify beschränken, können Sie in einem angemessenen Zeitrahmen eine funktionierende Lösung implementieren.

Zuverlässigkeit

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Der Dienst von Amazon sieht statistisch gesehen weniger stabil aus als Azure. Aber erfreulich ist die geringe Zahl vollwertiger Abschaltungen (rote Zellen). Im Grunde kommt es lediglich zu Warnungen und Instabilität bei einigen Diensten.

Dies wird durch die Liste der jüngsten Vorfälle auf AWS-Servern bestätigt – einige davon sind Warnungen unterschiedlicher Dauer (manchmal bis zu 16 Stunden), und der letzte Ausfall der Server war Mitte Juni. Im Allgemeinen macht es einen recht stabilen Eindruck.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Kosten

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Preispolitik Amazon Web Services ist auf den ersten Blick ganz einfach: Zahlen Sie nur für das, was Sie über das kostenlose Limit hinaus nutzen. Aber wie bei Microsoft Azure ist es umso schwieriger, die Gesamtkosten der Arbeit vorherzusagen, je mehr Dienste Sie nutzen.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Im Internet gibt es viele Rezensionen, die AWS als zu teuer bezeichnen. Was können wir sagen, wenn es seit langem Unternehmen gibt, die gegen einen gesonderten Betrag bereit sind, Ihre Nutzung von AWS zu optimieren und die monatlichen Rechnungen so weit wie möglich zu minimieren? 

Fazit von Amazon Amplify

Generell ähnelt die Geschichte bei Amazon Amplify der von Azure. In vielerlei Hinsicht die gleiche Funktionalität für MBaaS, Bereitstellung einer vollwertigen Infrastruktur und der Möglichkeit, Ihr eigenes Backend zu entwickeln. Positiv stechen die Marketingtools von Amazon hervor, insbesondere Pinpoint.

Auf der negativen Seite erinnern wir uns an die nicht weniger hohe Eintrittsschwelle als bei Azure und die gleichen Schwierigkeiten bei der Kostenprognose. Hinzu kommt ein weniger stabiler Service und, den Bewertungen nach zu urteilen, ein nicht reaktionsfähiger technischer Support.

Passt? Folgen Sie diesen Links, um mehr über Amazon Amplify zu erfahren, alle Details zu erfahren und mit der Nutzung zu beginnen: 

Google Firebase

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps
Service Firebase von Google ist eine der interessantesten Möglichkeiten als MBaaS-Dienst für Ihre Bewerbung. Es hat sich längst als nützliches Tool etabliert und ist es auch für viele bekannte Anwendungen: Shazam, Duolingo, Lyft und andere. 
Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

MBaaS

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Firebase kümmert sich um alles, was Ihre mobile App benötigt. Der Dienst vereint vollwertige Backend-Funktionen wie Datenspeicherung, Synchronisierung, Authentifizierung und Cloud-Funktionen (Backend-Code-Ausführung) und befindet sich derzeit in der Beta-Phase Kit für maschinelles Lernen, mit dem die Anwendung verschiedene auf maschinellem Lernen basierende Funktionen implementiert (Erkennung von Text, Objekten in Fotos und vieles mehr). 

Analytics

Ein wichtiges Merkmal von Firebase ist, dass der Dienst neben der Backend-Funktionalität auch vielfältige Möglichkeiten zur Anwendungsanalyse bietet. Integriertes Google Analytics, Benutzerbasissegmentierung und Push-Benachrichtigungen. Ebenfalls im Jahr 2017 tätigte Google eine große Akquisition, indem es den weit verbreiteten Fabric-Dienst kaufte und ihn zusammen mit Crashlytics in Firebase integrierte, einem sehr nützlichen Tool zum Verfolgen von App-Fehlern und zum Sammeln von Statistiken und Berichten über Abstürze, die auf den Geräten der Benutzer aufgetreten sind.

Zusätzliche Funktionalität

Firebase stellt ein Tool bereit Firebase Dynamic Links Um dynamische Links zu Ihren Inhalten zu verarbeiten, können Sie mit diesem Tool Links generieren, die zur Anwendung führen, wenn diese installiert ist. Andernfalls wird der Benutzer zur Installation an den App Store oder Google Play weitergeleitet. Außerdem funktionieren solche Links abhängig von dem Gerät, auf dem sie geöffnet werden. Wenn es sich um einen Computer handelt, wird die Seite im Browser geöffnet, und wenn es sich bei dem Gerät um einen Übergang zur Anwendung handelt.

Mit Google können Sie Ihre Anwendungen auch A/B-Tests durchführen Firebase A/B-Tests und richten Sie die Fernkonfiguration mit dem Tool ein Remote-Konfiguration

Komplexität der Integration

Es wird deutlich, dass dieser Dienst äußerst viele Funktionen für Ihre Anwendung vereint. Für die Firebase-Integration sollten Sie verwenden SDK notwendige Plattform, einschließlich iOS, Android, JavaScript sowie für C++ und Unity, was sehr nützlich sein wird, wenn Sie Spiele entwickeln. Es ist wichtig zu beachten, dass Firebase über eine ziemlich detaillierte Dokumentation und eine breite Entwickler-Benutzerbasis verfügt und daher viele unterstützende Inhalte im Web, seien es Antworten auf Fragen oder Übersichtsartikel.

Zuverlässigkeit

Ob man sich auf Google verlassen sollte, ist Gegenstand eines separaten Artikels. Einerseits hat man einen sehr stabilen und funktionierenden Anbieter, andererseits weiß man nie, wann „Google diesen Dienst auch schließen wird.“ Kein Wunder, dass Google von seiner Mission ausgeschlossen wurde „Sei nicht böse“

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Wenn ein Anbieter über solche Ressourcen verfügt, sollte die Betriebszeit scheinbar bei 100 % liegen, es gibt jedoch immer noch viele Berichte über Probleme mit dem Dienst, z. B. zitieren einer der Benutzer: Es kommt zu Ausfallzeiten. Im Fall von Firebase könnte man sagen, dass „Verfügbarkeit“ stattfindet.. Und tatsächlich: Wenn Sie sich die Statistiken zu Ereignissen mit Firebase-Diensten ansehen, werden wir feststellen, dass es sowohl zu kleinen Ausfallzeiten als auch zu vollständigen Ausfällen für 5–7 Stunden kommt, was für Ihren Dienst von entscheidender Bedeutung sein kann.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Und manchmal dauern die Probleme wochenlang. Wir dürfen nicht vergessen, dass kritischer und lebenswichtiger Code für das Produkt auf diesen Diensten ausgeführt werden kann. Diese Statistik sieht nicht sehr erfreulich aus.

Kosten

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Preispolitik Firebase ist klar und einfach, es gibt 3 Pläne: Spark, Flame und Blaze. Sie unterscheiden sich ideologisch voneinander. Während es sich bei Spark um einen kostenlosen Plan mit Einschränkungen handelt, können Sie einen erheblichen Teil der Funktionalität der Plattform bereitstellen und testen. Die Flame- und Blaze-Pläne haben eine kostenpflichtige Nutzung. Flame kostet pauschal 25 US-Dollar pro Monat, aber im Wesentlichen erhalten Sie den gleichen Spark, nur mit deutlich höheren Limits. 

Blaze ist anders als die anderen. Es ermöglicht Ihnen, die Funktionen der Plattform in unbegrenzter Menge zu nutzen, während Sie proportional zu den von Ihnen genutzten Ressourcen bezahlen. Dies ist ein äußerst flexibler Plan, bei dem Sie nur für die Funktionen bezahlen, die Sie nutzen. Wenn Sie sich beispielsweise dafür entscheiden, die Plattform nur zum Testen von Anwendungen zu nutzen, zahlen Sie nur für die Überschreitung der kostenlosen Testgrenzen.

Alles in allem ist die Preisgestaltung von Firebase sehr transparent und vorhersehbar. Dabei verstehen Sie, wie viel diese oder jene Funktionalität kosten wird, und kalkulieren auch die Kosten bei der Skalierung oder Änderung des Dienstes.

Zusammenfassung von Firebase

Der Firebase-Dienst von Google ist ein vollwertiger MBaaS-Anbieter, der die infrastrukturellen Komplexitäten begrenzt, mit denen AWS und Azure direkt verbunden sind. Alle für die Entwicklung eines Cloud-Backends erforderlichen Funktionen sind vorhanden, es gibt zahlreiche Analysemöglichkeiten, eine relativ einfache Integration, eine relativ niedrige Einstiegsschwelle und eine transparente Preisgestaltung. 

Von den negativen Seiten - Probleme mit der Stabilität des Dienstes. Eine Möglichkeit, darauf Einfluss zu nehmen, gibt es leider nicht, wir können nur auf die Google-Ingenieure hoffen.
Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps
Passend für dich? Folgen Sie diesen Links, um Google Firebase genauer kennenzulernen, alle Details zu erfahren und mit der Nutzung zu beginnen: 

Kumulos

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Kumulos ist ein unabhängiger MBaaS-Dienst, der 2011 gegründet wurde. 

MBaaS

Als mobiles Backend bietet Kumulos viele Standardtools, die wir bereits in früheren Diensten gesehen haben. Es ist auch möglich, umfassende Kampagnen basierend auf dem Zeitplan und dem geografischen Standort zu erstellen, Stürze zu verfolgen und zu diagnostizieren, eine bequeme Integration mit Slack, Trello und Jira, Datenspeicherung und Benutzerautorisierungsverarbeitung.

Wie Firebase kümmert sich der Dienst um alle Probleme mit Lastausgleich, Skalierung und anderen Infrastrukturproblemen.

Analytics

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

In Kumulos sind umfangreiche Analysen integriert, darunter regelmäßige Berichte, Benutzersegmentierung, detaillierte Verhaltensanalysen, Kohortenanalysen und mehr. Die Plattform wurde ursprünglich für Big Data entwickelt und ist bereit, mit großen Datenmengen zu arbeiten. Alle Analysen werden in Echtzeit angezeigt. Die interne Analyse-Engine prognostiziert verschiedene Erkenntnisse basierend auf den gesammelten Statistiken.

Eine wichtige Funktion ist die Möglichkeit, Daten zu speichern und in andere Dienste zu exportieren, darunter: Salesforce, Google BigQuery, Amplitude und Tableau.

Zusätzliche Funktionalität

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Eine interessante und selten gesehene Funktion ist ein Tool zur Optimierung der App-Werbung im App Store. Kumulos App Store-Optimierung wertet Ihre Bewerbungsseite aus und schlägt Lösungen zur Leistungsverbesserung vor. Verfolgt App-Erfolgsfaktoren wie Benutzerbewertungen und App-Rankings in den Top-Ländern und erstellt auf der Grundlage dieser Daten Berichte. 

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Es ist äußerst interessant, über ein spezielles Toolkit für mobile Entwicklungsstudios zu verfügen, das eine komfortable Schnittstelle zur Verwaltung von Anwendungsdaten für verschiedene Kunden bietet. Außerdem erstellen wir Berichte speziell für Ihre Kunden.

Komplexität der Integration

Bei Kumulos Große Auswahl an SDKs für die Integration mit nativen und plattformübergreifenden Tools. Bibliotheken werden aktiv aktualisiert und gepflegt.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Für alle Tools wird eine ausführliche Dokumentation beschrieben, außerdem gibt es mehrere Tutorials und vorgefertigte Beispiele zur Nutzung der Plattform.

Zuverlässigkeit

Leider konnte ich keine Statistiken zur Stabilität der Server des Kumulos-Dienstes finden.

Kosten

Zusätzlich zur kostenlosen Testversion bietet Kumulos drei weitere an Bezahlter Plan: Startup, Unternehmen und Agentur. Sie arbeiten nach dem Prinzip „Ich zahle nur für das, was ich nutze.“ Leider stellt der Dienst keine öffentlich zugängliche Preisliste zur Verfügung, es scheint, dass diese individuell und auf der Grundlage Ihrer Bedürfnisse berechnet wird.

Übersicht über Cloud-Dienste für die Backend-Entwicklung mobiler Apps

Es ist unmöglich, genau über die Vorhersehbarkeit und Höhe der Zahlungen zu sprechen, ohne die Tarife selbst für alle Pläne zu kennen. Eines gefällt: Offenbar ist die Preisgestaltung recht flexibel.

Insgesamt für Kumulos

Kumulos bietet eine MBaaS-Plattform, die Firebase in vielerlei Hinsicht ähnelt. Es enthält alle notwendigen MBaaS-Servicetools sowie umfangreiche Analyse- und Berichtsfunktionen. Interessant erscheint es als eigenständiges Angebot für mobile Anwendungsstudios, das viele Zusatzvorteile vereint.

Das Negative ist das Fehlen jeglicher Daten zur Stabilität der Server und der geschlossenen Preise.

Einen Versuch wert? Folgen Sie diesen Links, um Kumulos genauer kennenzulernen, alle Details zu erfahren und mit der Nutzung zu beginnen: 

Abschluss

Die Wahl eines Cloud-Dienstes für das mobile Backend muss ernst genommen werden, da sie einen dramatischen Einfluss auf den Entwicklungsprozess und die nachfolgende Entwicklung Ihrer Anwendung oder Ihres Dienstes haben wird. 

In dem Artikel haben wir vier Dienste überprüft: Microsoft Azure, AWS Amplify, Google Firebase und Kumulos. Darunter sind 4 große IaaS-Dienste und 2 MBaaS, die sich speziell auf das mobile Backend spezialisiert haben. Und bei jeder der Optionen gab es bestimmte Probleme und negative Aspekte.

Es ist wichtig zu verstehen, dass es keine perfekte Lösung gibt. Die Wahl der Technologie für ein Projekt ist ein Kompromiss zwischen Schlüsselfaktoren. Ich schlage vor, dass Sie sie noch einmal durchgehen:

Funktionalität

Die Funktionalität der von Ihnen gewählten Plattform wirkt sich direkt auf die Einschränkungen aus, die Sie Ihrem Backend auferlegen. Sie müssen sich bei der Auswahl eines Dienstes immer über Ihre Prioritäten im Klaren sein, sei es die Verwendung einer bestimmten Funktion, wie z. B. Push-Benachrichtigungen, um Geld zu sparen, oder der Aufbau Ihrer eigenen Infrastruktur innerhalb desselben Ökosystems, um Ihr Backend zu zentralisieren und zu vereinheitlichen. 

Analytics

Analytik ist aus modernen Diensten nicht mehr wegzudenken. Schließlich ist es dieses Tool, mit dem Sie den Service verbessern, Benutzer analysieren und dadurch mehr Gewinn erzielen können. Die Qualität des Endprodukts hängt direkt von der Qualität und Funktionalität der Analytik ab. Aber niemand macht sich die Mühe, Analysen von Drittanbietern anzubinden, sei es der analytische Teil von Firebase, AppMetrica von Yandex oder etwas anderes, das für Sie besser geeignet ist.

Komplexität der Integration

Die Komplexität der Integration wirkt sich direkt auf die Kosten sowohl der finanziellen als auch der zeitlichen Ressourcen im Entwicklungsprozess aus, ganz zu schweigen von der möglichen Komplikation des Prozesses der Entwicklersuche aufgrund der Unbeliebtheit oder einer hohen Einstiegsschwelle in das Toolkit.

Zuverlässigkeit und Stabilität

Die Zuverlässigkeit und Stabilität eines jeden Dienstes ist einer der wichtigsten Indikatoren. Und wenn die eigene Anwendung unter Problemen auf Anbieterseite leidet, ist die Situation nicht angenehm. Dem Endnutzer ist es egal, was dort nicht stimmt und ob Sie konkret dafür verantwortlich sind, dass der Dienst nicht funktioniert. Er wird nicht in der Lage sein, das zu tun, was er geplant hat, und das war's, der Eindruck ist verdorben, er wird möglicherweise nicht zum Produkt zurückkehren. Ja, es gibt keine idealen Dienste, aber es gibt Tools, um Verluste bei Problemen auf Anbieterseite zu minimieren.

Preispolitik

Die Preispolitik des Dienstes ist für viele ein entscheidender Faktor, denn wenn die finanziellen Möglichkeiten nicht mit den Anforderungen des Anbieters übereinstimmen, ist eine weitere Zusammenarbeit einfach nicht möglich. Es ist wichtig, die Kosten der Dienstleistungen, von denen Ihr Produkt abhängt, zu berücksichtigen und vorherzusagen. Die Preise variieren je nach Dienst, sind aber meist proportional zu den von Ihnen genutzten Ressourcen, sei es die Anzahl der gesendeten Benachrichtigungen oder die Größe Ihrer Speicherfestplatte.

Verkäuferschloss

Bei der Nutzung dieser Dienste ist es wichtig, sich nicht auf eine Lösung festzulegen, da man sonst völlig abhängig davon wird und der sogenannten „Vendor Lock“ unterliegt. Dies bedeutet, dass Sie sich dringend nach einem neuen MBaaS-Anbieter umsehen müssen, wenn etwas mit dem Dienst passiert, sich der Eigentümer ändert, die Entwicklungsrichtung ändert oder geschlossen wird, und je nach Größe der Anwendung wird ein solcher Umzug viel Zeit in Anspruch nehmen und dadurch Geldkosten. . Besonders beängstigend wird es, wenn das Backend an eine einzigartige Funktionalität des MBaaS-Anbieters gebunden ist, da alle Anbieter unterschiedlich sind und nicht alle über die gleichen Funktionen verfügen. Daher ist es selten möglich, sich „schmerzfrei“ zu bewegen.

Die gesamte Analyse kann in der folgenden Tabelle zusammengefasst werden:

Microsoft Azure

AWS verstärken

Google Firebase

Kumulos

MBaaS-Tools
Push-Benachrichtigungen, Datensynchronisierung, 
automatische Skalierung und Lastverteilung und vieles mehr

Analytics

Echtzeitanalyse

Analyse- und Targeting-Kampagnen in Amazon Pinpoint

Google Analytics und Crashlytics zum Sammeln von Absturzberichten

Echtzeitanalysen, Kohortenanalysen, Arbeiten mit Big Data und Export in andere Dienste

Zusätzliche Funktionalität

  1. Build-Automatisierung
  2. Geolocation-Framework
  3. KI-Tool
  4. Viele andere Azure-Dienste

  1. Gerätefarm
  2. Konsole verstärken
  3. Amazon Lex
  4. Viele andere AWS-Dienste

  1. Dynamische Links
  2. A/B-Tests
  3. Remote-Konfiguration

  1. App-Optimierung im App Store. 
  2. Funktionalität für die Studioentwicklung

Integration

  1. SDKs: iOS, Android, Xamarin, Phonegap
  2. Hohe Eintrittsschwelle

  1. SDK: iOS, Android, JS, React Native
  2. GraphQL-Unterstützung
  3. Hohe Eintrittsschwelle

SDK: iOS, Android, JS, C++, Unity

SDK: IOS, Android, WP, Cordova, PhoneGap, Xamarin, Unity, LUA Corona und viele mehr

Zuverlässigkeit und Stabilität

Extrem seltene Abschaltungen (bis zu 1 Mal pro Monat)

Seltene Ausfälle, meist Warnungen

Es gibt Krisenzeiten und Stromausfälle

Keine Statistiken

Preispolitik

  1. Berechnet aus verbrauchten Ressourcen
  2. Schwierigkeiten bei der Prognose
  3. Die Kosten sind höher als bei MBaaS-Diensten

  1. Spark (kostenlos)
  2. Flamme (25$/m)
  3. Blaze (pro Verwendung)

  1. Startup
  2. Unternehmen
  3. Agentur

Alle Pläne berechnen pro Nutzung

Daher haben wir 4 Cloud-Dienste analysiert. Es gibt Dutzende anderer ähnlicher Tools. Den perfekten Service gibt es nicht. Die beste Strategie, um den richtigen Service zu finden, besteht darin, sich so früh wie möglich über die Anforderungen Ihres Anbieters und die Kompromisse, die Sie eingehen möchten, im Klaren zu sein. 
Wir möchten, dass Sie die richtige Wahl treffen.

Stabilitätsdaten aus dem Dienst https://statusgator.com/
Benutzerbewertungsdaten aus dem Dienst www.capterra.com

An der Umfrage können nur registrierte Benutzer teilnehmen. Einloggenbitte.

Und welchen Dienst haben Sie als Backend für Ihre Anwendung genutzt?

  • Microsoft Azure

  • AWS Amplify (oder AWS Mobile Hub)

  • Google Firebase

  • Kumulos

  • Sonstiges (in den Kommentaren angeben)

16 Benutzer haben abgestimmt. 13 Benutzer enthielten sich der Stimme.

Source: habr.com

Kommentar hinzufügen