Présentation des services cloud pour le développement backend d'applications mobiles

Le développement backend est un processus complexe et coûteux. Lors du développement d'applications mobiles, on lui accorde souvent une attention déraisonnable. C'est injustifié, car il faut à chaque fois mettre en place des scénarios typiques pour les applications mobiles : envoyer une notification push, savoir combien d'utilisateurs sont intéressés par la promotion et passer une commande, etc. Je veux une solution qui vous permettra de vous concentrer sur les choses importantes pour l'application sans perdre en qualité et en détails dans la mise en œuvre des secondaires. Et il existe des solutions !

Ces services sont appelés Mobile Backend-as-a-Service (MBaaS). Les processus de création d'un backend avec leur aide sont simplifiés par rapport au développement "manuellement". Ce sont les économies réalisées sur l'embauche d'un développeur backend distinct. Et le fait que le fournisseur MBaaS s'occupe de tous les problèmes liés à la stabilité du serveur, à l'équilibrage de charge, à l'évolutivité et à d'autres difficultés d'infrastructure donne confiance dans la qualité du résultat et constitue le principal avantage de tels services.

Dans cet article, nous examinerons plusieurs services importants et éprouvés : Microsoft Azure, AWS Amplify, Google Firebase, Kumulos.

Présentation des services cloud pour le développement backend d'applications mobiles

Les points sur lesquels nous allons considérer les services : la fonctionnalité du backend et de l'analytics, la complexité d'intégration du service, la fiabilité et la stabilité du travail, et la politique tarifaire. Passons en revue chaque service et notons leurs caractéristiques selon ces critères.

Microsoft Azure

Présentation des services cloud pour le développement backend d'applications mobiles

Microsoft Azure - Infrastructure-As-A-Service (IaaS) est un service qui contient des fonctionnalités BaaS à part entière et aide à créer un backend pour les applications mobiles.

MBAaS

Microsoft Azure dispose d'un ensemble complet de fonctionnalités pour créer un backend pour une application mobile. Traitement des notifications push, mise à l'échelle automatique, synchronisation des données, intégration des médias sociaux et plus encore.

Une caractéristique importante d'Azure est l'emplacement géographique des serveurs. Ils sont situés dans 54 régions du monde, ce qui augmente la probabilité de choisir un serveur qui vous convient en termes de latence. Étant donné que seules certaines régions souffrent le plus souvent en cas de dysfonctionnement, on peut supposer que plus il y a de régions, moins il y a de chances d'en arriver à la très «instable». Microsoft prétend avoir plus de régions que tout autre fournisseur de cloud. C'est définitivement un plus.

Présentation des services cloud pour le développement backend d'applications mobiles

Analytique

Le service offre la possibilité de surveiller les performances des applications en temps réel et de collecter des rapports sur les "chutes". Cela vous permet de localiser et de résoudre instantanément le problème.

Toujours dans Azure, vous pouvez utiliser leur propre bibliothèque pour collecter des analyses dans les applications : collecter des métriques de base (informations sur l'appareil, informations sur la session, activité de l'utilisateur, etc.) et créer des événements personnalisés pour le suivi. Toutes les données collectées sont immédiatement exportées vers Azure, ce qui vous permet d'effectuer un travail d'analyse avec elles dans un format pratique

Fonctionnalité supplémentaire

Il existe également des fonctionnalités intéressantes telles que le test de versions d'applications sur de vrais appareils, des paramètres CI / CD pour automatiser le processus de développement et des outils pour soumettre des versions d'applications pour des tests bêta ou directement sur l'App Store ou Google Play.

Azure vous permet d'utiliser une infrastructure prête à l'emploi conçue pour fonctionner avec des cartes et des données géospatiales, ce qui facilite l'utilisation de ce format.

La possibilité de résoudre des problèmes à l'aide de intelligence artificielle, avec lequel vous pouvez prédire divers indicateurs analytiques et utiliser des outils prêts à l'emploi pour la vision par ordinateur, la reconnaissance vocale et bien plus encore.

Complexité de l'intégration

Le service Microsoft Azure fournit SDK pour les principales plateformes mobiles (iOS et Android) et, ce qui est rare, pour les solutions multiplateformes (Xamarin et PhoneGap). 

En général, les utilisateurs se plaignent de l'interface complexe et de la barrière élevée à l'entrée. Cela indique d'éventuels problèmes dans l'intégration du service. 

Il est important de comprendre qu'un seuil d'entrée élevé n'est pas un cas particulier avec Azure, mais un problème général pour IaaS. Par exemple, Amazon Web Services, dont nous parlerons ensuite, est également encore plus sujet à cette maladie.

Fiabilité

Présentation des services cloud pour le développement backend d'applications mobiles

La stabilité du service de Microsoft semble correcte. On peut voir qu'au moins une fois par mois, il peut y avoir des problèmes à court terme dans différentes régions. Cette image parle de la stabilité suffisante du service, les problèmes surviennent rarement, dans certaines régions et sont résolus extrêmement rapidement, permettant au service de maintenir une disponibilité décente. 

Présentation des services cloud pour le développement backend d'applications mobiles

Ceci est confirmé par la liste des incidents récents sur les serveurs Azure - la plupart d'entre eux sont des avertissements à court terme, et la dernière fois que les serveurs ont été arrêtés, c'était début mai. Les statistiques confirment l'image d'un service stable.

coût de

В politique de prix Microsoft Azure a différents taux de paiement pour le service, il existe également un plan gratuit avec certaines limites, ce qui est suffisant pour les tests. Il est important de rappeler qu'Azure est un service IaaS, dont la plupart, du fait de leurs spécificités et de la complexité du calcul des ressources dépensées, souffrent de la difficulté de prévoir le coût du travail. De nombreuses personnes sont confrontées à des difficultés et souvent même à l'incapacité de calculer correctement les capacités utilisées. Le compte réel peut différer sensiblement de celui attendu. 

Présentation des services cloud pour le développement backend d'applications mobiles

De plus, Azure, en plus de ces plans, propose des services payants distincts : App Service Domain, Azure App Service Certificates et SSL Connections. Tous concernent l'administration de votre infrastructure, nous n'y toucherons pas.
Dans de nombreux avis, les utilisateurs se plaignent de la politique tarifaire complexe et de l'incapacité à prévoir le coût du service. La calculatrice proposée par Microsoft est qualifiée d'inutile et le service lui-même est extrêmement coûteux.

Conclusion pour Azure

Le service Azure de Microsoft est un outil fonctionnel et stable à utiliser en tant que principal fournisseur MBaaS. Le fait que le service fournisse initialement une infrastructure complète ouvre de nombreuses possibilités de développement ultérieur de votre backend au-delà des applications mobiles. Un grand nombre de serveurs et un grand nombre de régions où ils se trouvent vous aident à choisir la latence qui vous convient. Les avis positifs des utilisateurs le confirment. Parmi les points négatifs - un seuil d'entrée élevé et une difficulté à prévoir le coût du service.

Présentation des services cloud pour le développement backend d'applications mobiles

Convient ? Suivez ces liens pour découvrir Microsoft Azure plus en détail, apprendre tous les détails et commencer à l'utiliser : 

AWS Amplifier

Présentation des services cloud pour le développement backend d'applications mobiles

Amazon Web Services (AWS) est le deuxième IaaS à figurer dans notre sélection. Il représente un grand nombre de services et est intéressant car, par analogie avec Microsoft Azure, il dispose d'un ensemble de fonctionnalités dédiées appelées AWS Amplifier, qui est essentiellement le backend mobile. Auparavant, vous avez peut-être entendu le nom d'AWS Mobile Hub, qui a longtemps été le principal service fournissant la fonctionnalité MBaaS. Comment пишут Amazon eux-mêmes, Amplify est un Mobile Hub révisé et amélioré qui résout les principaux problèmes de son prédécesseur.

Présentation des services cloud pour le développement backend d'applications mobiles

Selon Amazon, Amplify bénéficie de la confiance de nombreuses grandes entreprises, dont Netflix, Airbnb et bien d'autres.

MBAaS

Présentation des services cloud pour le développement backend d'applications mobiles

La solution mobile d'Amazon vous permet de configurer rapidement toutes les fonctionnalités nécessaires pour une application mobile. Qu'il s'agisse de la logique du serveur, du stockage des données, de l'autorisation des utilisateurs ou du traitement et de la diffusion du contenu, des notifications et des analyses. 

Amazon fournit également toutes les conditions nécessaires en termes d'infrastructure, telles que la mise à l'échelle, l'équilibrage de charge, etc.

Analytique

Un service distinct est responsable de l'analyse Amazon Pinpoint, où vous pouvez segmenter l'audience et mener des campagnes de ciblage à grande échelle via différents canaux (notifications push, SMS et e-mail) pour attirer les utilisateurs vers le service.

Pinpoint fournit des données en temps réel, vous pouvez créer des segments d'audience dynamiques, analyser leur engagement et optimiser votre stratégie marketing en fonction de ces données.

Fonctionnalité supplémentaire

Amazon Amplify donne accès au service Batterie de périphériques AWS pour tester les builds de vos applications sur des appareils réels. Le service vous permet d'effectuer des tests automatisés parallèles de vos applications sur une variété d'appareils physiques, des tests manuels sont également disponibles.

Service Console AWS Amplify est un outil de déploiement et d'hébergement de ressources serveur et d'applications Web avec la possibilité de configurer CI / CD pour automatiser le processus de développement.

La possibilité d'introduire des bots vocaux et textuels dans des applications mobiles « prêtes à l'emploi » est également inhabituelle en tant qu'interface pour l'interaction de l'utilisateur. Cela fonctionne sur le service Amazon Lex.

Fait intéressant, AWS Amplify fournit également un petit bibliothèque composants d'interface utilisateur prêts à l'emploi pour votre application React Native, qui peuvent servir d'accélération légère du processus de développement, ou être utilisés dans un prototype ou MVP de votre projet.

Complexité de l'intégration

Amazon Amplify fournit un SDK pour iOS, Android, JavaScript и Réagir Native et assez détaillé. documentation. Il est important de noter qu'en plus de REST, le service prend également en charge GraphQL.

Comme indiqué dans le processus d'analyse Azure, une barrière à l'entrée élevée est un problème commun à tous les IaaS. Amazon ne fait pas exception, bien au contraire. C'est probablement l'un des services les plus difficiles à comprendre. Cela est dû au grand nombre d'outils différents dont dispose AWS. Apprendre AWS à partir de zéro prendra beaucoup de temps. Mais si vous vous limitez uniquement à Amplify, vous pouvez mettre en œuvre une solution de travail dans un délai adéquat.

Fiabilité

Présentation des services cloud pour le développement backend d'applications mobiles

Le service d'Amazon semble statistiquement moins stable qu'Azure. Mais le petit nombre d'arrêts à part entière (cellules rouges) plaît. Fondamentalement, tout ce qui se passe, ce sont des avertissements et une instabilité dans certains services.

Ceci est confirmé par la liste des incidents récents sur les serveurs AWS - certains d'entre eux sont des avertissements de durée différente (parfois jusqu'à 16 heures), et la dernière fois que les serveurs ont été arrêtés, c'était à la mi-juin. En général, il semble assez stable.

Présentation des services cloud pour le développement backend d'applications mobiles

coût de

Présentation des services cloud pour le développement backend d'applications mobiles

Politique de prix Amazon Web Services est assez simple à première vue - ne payez que pour ce que vous utilisez, au-delà de la limite gratuite. Mais comme avec Microsoft Azure, plus vous utilisez de services, plus il est difficile de prévoir le coût total des travaux.

Présentation des services cloud pour le développement backend d'applications mobiles

Il existe de nombreuses critiques sur Internet qui qualifient AWS de trop cher. Que pouvons-nous dire, si des entreprises sont apparues depuis longtemps qui, pour un montant distinct, sont prêtes à optimiser votre utilisation d'AWS, en minimisant au maximum les factures mensuelles. 

Amazon amplifie le résultat net

En général, l'histoire avec Amazon Amplify est similaire à Azure. À bien des égards, les mêmes fonctionnalités pour MBaaS, fournissant une infrastructure complète et la possibilité de développer votre propre backend. Les outils marketing d'Amazon se démarquent positivement, en particulier Pinpoint.

Côté négatif, on rappelle le seuil d'entrée non moins élevé qu'Azure, et les mêmes difficultés de prévision des coûts. Ajoutez à cela un service moins stable et, à en juger par les avis, un support technique peu réactif.

Convient ? Suivez ces liens pour en savoir plus sur Amazon Amplify, connaître tous les détails et commencer à l'utiliser : 

Google Firebase

Présentation des services cloud pour le développement backend d'applications mobiles
Service Firebase de Google est l'une des options les plus intéressantes en tant que service MBaaS pour votre application. Il s'est depuis longtemps imposé comme un outil utile et l'est pour de nombreuses applications bien connues : Shazam, Duolingo, Lyft et autres. 
Présentation des services cloud pour le développement backend d'applications mobiles

MBAaS

Présentation des services cloud pour le développement backend d'applications mobiles

Firebase s'occupe de tout ce dont votre application mobile a besoin. Le service combine des fonctionnalités backend à part entière, telles que le stockage de données, la synchronisation, l'authentification, les fonctions cloud (exécution de code backend), et est actuellement en version bêta Kit d'apprentissage automatique, avec lequel l'application implémente diverses fonctionnalités basées sur l'apprentissage automatique (reconnaissance de texte, d'objets dans les photographies, et bien plus encore). 

Analytique

Une caractéristique importante de Firebase est qu'en plus des fonctionnalités backend, le service offre également une large gamme d'options pour l'analyse des applications. Google Analytics intégré, segmentation de la base d'utilisateurs et notifications push. Toujours en 2017, Google a fait une acquisition majeure en achetant le service Fabric largement utilisé et en l'intégrant à Firebase avec Crashlytics, un outil très utile pour suivre les bugs des applications et collecter des statistiques et des rapports sur les plantages survenus sur les appareils des utilisateurs.

Fonctionnalité supplémentaire

Firebase fournit un outil Liens dynamiques Firebase pour traiter les liens dynamiques vers votre contenu, avec cet outil, vous pouvez générer des liens qui mènent à l'application si elle est installée, sinon, ils envoient l'utilisateur vers l'App Store ou Google Play pour l'installation. De plus, ces liens fonctionnent en fonction de l'appareil sur lequel ils s'ouvrent, s'il s'agit d'un ordinateur, la page sera ouverte dans le navigateur et si l'appareil est une transition vers l'application.

Google vous permet également de tester A/B vos applications en utilisant Test A/B Firebase et mettre en place la configuration à distance avec l'outil Configuration à distance

Complexité de l'intégration

Il devient clair que ce service combine un nombre extrêmement important de fonctionnalités pour votre application. Pour l'intégration Firebase, vous devez utiliser SDK plate-forme nécessaire, y compris iOS, Android, JavaScript, ainsi que pour C ++ et Unity, ce qui vous sera très utile si vous développez des jeux. Il est important de noter que Firebase dispose d'une documentation assez détaillée et d'une large base d'utilisateurs de développeurs, et par conséquent, de nombreux contenus de support sur le Web, qu'il s'agisse de réponses à des questions ou d'articles de synthèse.

Fiabilité

La question de savoir s'il faut se fier à Google fait l'objet d'un article séparé. D'une part, vous avez un fournisseur très stable et fonctionnel, et d'autre part, vous ne savez jamais quand "Google fermera également ce service". Pas étonnant que Google ait été retiré de sa mission "Ne sois pas méchant"

Présentation des services cloud pour le développement backend d'applications mobiles

Lorsqu'un fournisseur dispose de telles ressources, il semblerait que la disponibilité devrait tendre vers 100 %, mais vous pouvez toujours trouver de nombreux rapports de problèmes avec le service, par exemple, citer un des utilisateurs : Les temps d'arrêt se produisent. Dans le cas de Firebase, vous pourriez dire que le "temps de disponibilité" se produit". Et en effet, si vous regardez les statistiques sur les événements avec les services Firebase, nous verrons qu'il y a à la fois de petits temps d'arrêt et des pannes complètes pendant 5 à 7 heures, cela peut être critique pour votre service.

Présentation des services cloud pour le développement backend d'applications mobiles

Et parfois les problèmes durent des semaines. Il ne faut pas oublier que ces services peuvent exécuter du code critique et vital pour le produit. Cette statistique ne semble pas très heureuse.

coût de

Présentation des services cloud pour le développement backend d'applications mobiles

Politique de prix Firebase est clair et simple, il y a 3 plans : Spark, Flame et Blaze. Ils sont idéologiquement différents les uns des autres. Alors que Spark est un plan gratuit avec des limites qui vous permettent de déployer et de tester une partie importante des fonctionnalités de la plateforme. Les plans Flame et Blaze ont une utilisation payante. Flame coûte 25 $ par mois, mais vous obtenez essentiellement le même Spark, mais avec des limites nettement plus élevées. 

Blaze est différent des autres. Il vous permet d'utiliser les capacités de la plateforme en quantités illimitées, tout en payant proportionnellement aux ressources que vous utilisez. Il s'agit d'un plan très flexible où vous ne payez que pour les fonctionnalités que vous utilisez. Si, par exemple, vous décidez d'utiliser la plate-forme uniquement pour tester des applications, vous ne paierez que pour le dépassement des limites de test gratuit.

Dans l'ensemble, la tarification de Firebase est très transparente et prévisible. Dans le processus, vous comprenez combien coûtera telle ou telle fonctionnalité, et calculez également le coût lors de la mise à l'échelle ou de la modification du service.

Résumé par Firebase

Le service Firebase de Google est un fournisseur MBaaS à part entière qui limite les complexités infrastructurelles auxquelles AWS et Azure sont directement liés. Toutes les fonctionnalités nécessaires au développement d'un backend cloud sont en place, de nombreuses possibilités d'analyse, une relative facilité d'intégration, un seuil d'entrée assez bas et une tarification transparente. 

Parmi les côtés négatifs - problèmes avec la stabilité du service. Malheureusement, il n'y a aucun moyen d'influencer cela, nous ne pouvons qu'espérer les ingénieurs de Google.
Présentation des services cloud pour le développement backend d'applications mobiles
Approprié pour vous? Suivez ces liens pour découvrir Google Firebase plus en détail, apprendre tous les détails et commencer à l'utiliser : 

Kumulos

Présentation des services cloud pour le développement backend d'applications mobiles

Kumulos est un service MBaaS indépendant fondé en 2011. 

MBAaS

En tant que backend mobile, Kumulos propose de nombreux outils standards que nous avons déjà vus dans les services précédents. Il est également possible de créer des campagnes à part entière basées sur le calendrier et la géolocalisation, le suivi et le diagnostic des chutes, une intégration pratique avec Slack, Trello et Jira, le stockage des données et le traitement des autorisations des utilisateurs.

Comme Firebase, le service prend en charge tous les problèmes d'équilibrage de charge, de mise à l'échelle et d'autres problèmes d'infrastructure.

Analytique

Présentation des services cloud pour le développement backend d'applications mobiles

Kumulos intègre des analyses approfondies, notamment des rapports périodiques, la segmentation des utilisateurs, des analyses comportementales détaillées, des analyses de cohorte, etc. La plate-forme a été créée à l'origine pour le Big Data et est prête à fonctionner avec de grandes quantités de données. Toutes les analyses sont affichées en temps réel. Le moteur d'analyse interne prédit diverses informations sur la base des statistiques collectées.

Une fonctionnalité importante est la possibilité de stocker et d'exporter des données vers d'autres services, notamment : Salesforce, Google BigQuery, Amplitude et Tableau.

Fonctionnalité supplémentaire

Présentation des services cloud pour le développement backend d'applications mobiles

Une fonctionnalité intéressante et rarement vue est un outil pour optimiser la promotion des applications dans l'App Store. Optimisation de l'App Store de Kumulos évalue votre page d'application et suggère des solutions pour améliorer les performances. Suit les facteurs de succès des applications tels que les notes des utilisateurs et les classements des applications dans les principaux pays, et génère des rapports basés sur ces données. 

Présentation des services cloud pour le développement backend d'applications mobiles

Il semble extrêmement intéressant d'avoir une boîte à outils spéciale pour les studios de développement mobile, qui fournit une interface pratique pour gérer les données d'application pour divers clients. En plus de générer des rapports spécifiquement pour vos clients.

Complexité de l'intégration

Kumulos large éventail de SDK pour l'intégration avec des outils natifs et multiplateformes. Les bibliothèques sont activement mises à jour et maintenues.

Présentation des services cloud pour le développement backend d'applications mobiles

Une documentation détaillée est décrite pour tous les outils, il existe également plusieurs tutoriels et exemples prêts à l'emploi d'utilisation de la plate-forme.

Fiabilité

Malheureusement, je n'ai trouvé aucune statistique sur la stabilité des serveurs du service Kumulos.

coût de

En plus de l'essai gratuit, Kumulos dispose de 3 forfait payant: Startup, Entreprise et Agence. Ils fonctionnent sur le principe "Je ne paie que pour ce que j'utilise". Malheureusement, le service ne fournit pas de liste de prix dans le domaine public, il semble qu'elle soit calculée individuellement, en fonction de vos besoins.

Présentation des services cloud pour le développement backend d'applications mobiles

Il est impossible de parler avec précision de la prévisibilité et de la taille des paiements sans connaître les taux eux-mêmes pour tous les plans. Une chose plaît - apparemment, les prix sont assez flexibles.

Total pour les Kumulos

Kumulos fournit une plate-forme MBaaS à bien des égards similaire à Firebase. Il contient tout l'ensemble nécessaire d'outils de service MBaaS, des capacités d'analyse et de rapport assez étendues. Il semble intéressant en tant qu'offre distincte pour les studios d'applications mobiles, qui combine de nombreux avantages supplémentaires.

Du négatif - le manque de données sur la stabilité des serveurs et les prix fermés.

Ça vaut le coup d'essayer? Suivez ces liens pour connaître Kumulos plus en détail, apprendre tous les détails et commencer à l'utiliser : 

Conclusion

Le choix d'un service cloud pour le backend mobile est important à prendre au sérieux, car il aura un impact considérable sur le processus de développement et le développement ultérieur de votre application ou service. 

Dans l'article, nous avons passé en revue 4 services : Microsoft Azure, AWS Amplify, Google Firebase et Kumulos. Parmi eux, 2 grands services IaaS et 2 MBaaS, spécialisés spécifiquement dans le backend mobile. Et dans chacune des options rencontré certains problèmes et aspects négatifs.

Il est important de comprendre qu'il n'y a pas de solution parfaite. Le choix de la technologie pour un projet est un compromis entre des facteurs clés. Je vous propose de les parcourir à nouveau :

Fonctionnalité

La fonctionnalité de la plateforme que vous choisissez affecte directement les restrictions que vous imposez à votre backend. Vous devez toujours être clair sur vos priorités lorsque vous choisissez un service, qu'il s'agisse d'utiliser une fonctionnalité spécifique, telle que les notifications push pour économiser de l'argent, ou de créer votre propre infrastructure au sein du même écosystème pour centraliser et uniformiser votre backend. 

Analytique

Il est difficile d'imaginer des services modernes sans analyse. Après tout, c'est cet outil qui vous permet d'améliorer le service, d'analyser les utilisateurs et, par conséquent, d'obtenir plus de profit. La qualité du produit final dépend directement de la qualité et de la fonctionnalité des analyses. Mais personne ne se soucie de connecter des analyses tierces, que ce soit la partie analytique de Firebase, AppMetrica de Yandex, ou quelque chose d'autre qui vous convient mieux.

Complexité de l'intégration

La complexité de l'intégration affecte directement les coûts des ressources monétaires et temporelles dans le processus de développement, sans parler de la complication possible du processus de recherche de développeurs en raison de l'impopularité ou d'un seuil élevé pour entrer dans la boîte à outils.

Fiabilité et stabilité

La fiabilité et la stabilité de tout service est l'un des indicateurs les plus importants. Et lorsque votre propre application souffre de problèmes du côté du fournisseur, la situation n'est pas agréable. L'utilisateur final ne se soucie pas de ce qui ne va pas et de savoir si vous êtes spécifiquement responsable du fait que le service ne fonctionne pas. Il ne pourra pas faire ce qu'il a prévu, et ça y est, l'impression est gâchée, il risque de ne pas revenir sur le produit. Oui, il n'y a pas de services idéaux, mais il existe des outils pour minimiser les pertes en cas de problème du côté du fournisseur.

Politique de prix

La politique tarifaire du service est un facteur déterminant pour beaucoup, car si les capacités financières ne correspondent pas aux demandes du prestataire, alors vous ne pourrez tout simplement pas continuer à travailler ensemble. Il est important de considérer et de prévoir le coût des services dont dépend votre produit. Le prix varie selon les services, mais le plus souvent il est proportionnel aux ressources que vous utilisez, qu'il s'agisse du nombre de notifications envoyées ou de la taille de votre disque dur de stockage.

Verrou du vendeur

En utilisant ces services, il est important de ne pas rester bloqué sur une solution, sinon vous en devenez complètement dépendant et vous vous condamnez au soi-disant "vendor lock". Cela signifie que si quelque chose arrive au service, que le propriétaire change, que la direction du développement ou ferme, vous devrez chercher de toute urgence un nouveau fournisseur MBaaS et, selon la taille de l'application, un tel déménagement prendra beaucoup de temps. et, par conséquent, des coûts monétaires. . Ce sera particulièrement effrayant si le backend est lié à une fonctionnalité unique du fournisseur MBaaS, car tous les fournisseurs sont différents et n'ont pas tous le même ensemble de fonctionnalités. Par conséquent, il est rare qu'il soit possible de se déplacer "sans douleur".

L’ensemble de l’analyse peut être résumé dans le tableau ci-dessous :

Microsoft Azure

AWS Amplifier

Google Firebase

Kumulos

Outils MBaaS
notifications push, synchronisation des données, 
mise à l'échelle et équilibrage de charge automatiques, et bien plus encore

Analytique

Analyse en temps réel

Analyses et campagnes de ciblage dans Amazon Pinpoint

Google Analytics et Crashlytics pour la collecte des rapports de plantage

Analyse en temps réel, analyse de cohorte, travail avec Big Data et exportation vers d'autres services

Fonctionnalité supplémentaire

  1. Construire l'automatisation
  2. Cadre de géolocalisation
  3. Outil IA
  4. De nombreux autres services Azure

  1. Ferme d'appareils
  2. Amplifier la console
  3. Amazon Lex
  4. De nombreux autres services AWS

  1. Liens dynamiques
  2. Test A / B
  3. Configuration à distance

  1. Optimisation des applications dans l'App Store. 
  2. Fonctionnalité pour le développement en studio

intégration

  1. SDK : iOS, Android, Xamarin, Phonegap
  2. Seuil d'entrée élevé

  1. SDK : iOS, Android, JS, React Native
  2. Prise en charge de GraphQL
  3. Seuil d'entrée élevé

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

SDK : IOS, Android, WP, Cordova, PhoneGap, Xamarin, Unity, LUA Corona et bien d'autres

Fiabilité et stabilité

Arrêts extrêmement rares (jusqu'à 1 fois par mois)

Rares pannes, principalement des avertissements

Il y a des périodes de troubles et des pannes

Aucune statistique

Politique de prix

  1. Calculé à partir des ressources utilisées
  2. Difficulté à prévoir
  3. Le coût est plus élevé que les services MBaaS

  1. Étincelle (gratuit)
  2. Flamme (25$/m)
  3. Blaze (par utilisation)

  1. Démarrage
  2. Entreprise
  3. Agence

Tous les forfaits sont facturés à l'utilisation

Ainsi, nous avons analysé 4 services cloud. Il existe des dizaines d'autres outils similaires. Il n'y a pas de service parfait, donc la meilleure stratégie pour trouver le bon est d'être conscient des exigences de votre fournisseur et des compromis que vous êtes prêt à faire le plus tôt possible. 
Nous voulons que vous fassiez le bon choix.

Données de stabilité tirées du service https://statusgator.com/
Données d'évaluation des utilisateurs tirées du service www.capterra.com

Seuls les utilisateurs enregistrés peuvent participer à l'enquête. se connecters'il te plait.

Et quel service avez-vous utilisé comme backend pour votre application ?

  • Microsoft Azure

  • AWS Amplify (ou AWS Mobile Hub)

  • Google Firebase

  • Kumulos

  • Autre (précisez dans les commentaires)

16 utilisateurs ont voté. 13 utilisateurs se sont abstenus.

Source: habr.com

Ajouter un commentaire