Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Lo sviluppo del backend è un processo complesso e costoso. Quando si sviluppano applicazioni mobili, spesso viene prestata irragionevolmente più attenzione. Ingiustificato, perché ogni volta bisogna implementare scenari tipici delle applicazioni mobile: inviare una notifica push, scoprire quanti utenti sono interessati alla promozione ed effettuare un ordine, ecc. Voglio una soluzione che mi permetta di concentrarmi sulle cose importanti per l'applicazione senza perdere qualità e dettaglio nell'implementazione di quelle non importanti. E ci sono tali soluzioni!

Tali servizi sono chiamati Mobile Backend-as-a-Service (MBaaS). I processi di creazione del backend con il loro aiuto sono semplificati rispetto allo sviluppo manuale. Ciò consente di risparmiare sull'assunzione di uno sviluppatore backend separato. E il fatto che il fornitore MBaaS si occupi di tutte le questioni relative alla stabilità del server, al bilanciamento del carico, alla scalabilità e ad altre complessità dell'infrastruttura dà fiducia nella qualità del risultato ottenuto ed è il principale vantaggio di tali servizi.

In questo articolo esamineremo diversi servizi grandi e comprovati: Microsoft Azure, AWS Amplify, Google Firebase, Kumulos.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Punti su cui considereremo i servizi: funzionalità di backend e di analisi, complessità dell'integrazione del servizio, affidabilità e stabilità del funzionamento e politica dei prezzi. Esaminiamo ciascun servizio e notiamo le loro caratteristiche secondo questi criteri.

Microsoft Azure

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Microsoft Azure — Infrastructure-As-A-Service (IaaS) è ​​un servizio che contiene funzionalità BaaS complete e aiuta a creare un backend per applicazioni mobili.

MBaaS

Microsoft Azure ha un set completo di funzionalità per la creazione di un backend per un'applicazione mobile. Elaborazione notifiche push, ridimensionamento automatico, sincronizzazione dati, integrazione con social network e molto altro.

Una caratteristica importante di Azure è la posizione geografica dei server. Si trovano in 54 regioni del mondo, il che aumenta la probabilità di scegliere un server adatto alla tua latenza. Poiché in caso di problemi solo alcune regioni ne soffrono, si può presumere che più regioni ci sono, meno è probabile che si finisca con quella “instabile”. Microsoft afferma di avere più regioni di qualsiasi altro fornitore di servizi cloud. Questo è sicuramente un vantaggio.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Analitica

Il servizio offre la possibilità di monitorare le prestazioni dell'applicazione in tempo reale e raccogliere rapporti sugli arresti anomali. Permettendoti così di localizzare e risolvere immediatamente il problema.

Anche in Azure è possibile utilizzare la propria libreria per raccogliere analisi nelle applicazioni: raccogliere metriche di base (informazioni sul dispositivo, sessione, attività dell'utente e molto altro) e creare i propri eventi per il monitoraggio. Tutti i dati raccolti vengono immediatamente esportati in Azure, consentendoti di svolgere un lavoro analitico con essi in un formato conveniente

Funzionalità aggiuntive

Ci sono anche funzionalità interessanti come testare build di applicazioni su dispositivi reali, impostazioni CI/CD per automatizzare il processo di sviluppo e strumenti per inviare gruppi di applicazioni per il beta testing o direttamente all'App Store o a Google Play

Azure consente di utilizzare un framework pronto all'uso progettato per funzionare con mappe e dati geospaziali, che semplifica l'utilizzo di questo formato.

Particolarmente interessante è la possibilità di risolvere problemi utilizzando intelligenza artificiale, con cui puoi prevedere vari indicatori analitici e utilizzare strumenti pronti all'uso per la visione artificiale, il riconoscimento vocale e molto altro.

Difficoltà di integrazione

Microsoft Azure fornisce SDK per le principali piattaforme mobili (iOS e Android) e, cosa non frequente, per soluzioni multipiattaforma (Xamarin e PhoneGap). 

In generale, gli utenti si lamentano dell'interfaccia complessa e dell'elevata barriera all'accesso. Ciò indica possibili problemi nell'integrazione del servizio. 

È importante comprendere che l’elevata barriera all’ingresso non è un caso speciale per Azure, ma un problema generale per IaaS. Ad esempio, anche Amazon Web Services, di cui parleremo più avanti, è ancora più suscettibile a questa malattia.

Affidabilità

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

La stabilità del servizio Microsoft sembra decente. Si può vedere che in diverse regioni possono verificarsi problemi a breve termine almeno una volta al mese. Questo quadro indica una stabilità sufficiente del servizio; i problemi si verificano raramente, in alcune regioni, e vengono risolti in modo estremamente rapido, consentendo al servizio di mantenere un tempo di attività decente. 

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Ciò è confermato dall'elenco degli incidenti recenti sui server Azure: la maggior parte di essi sono avvisi a breve termine e l'ultima volta che i server sono stati inattivi è stato all'inizio di maggio. Le statistiche confermano il quadro di un servizio stabile.

costo

В politica dei prezzi Microsoft Azure prevede diversi piani di pagamento per il servizio; esiste anche un piano gratuito con determinati limiti, sufficiente per testarlo. È importante ricordare che Azure è un servizio IaaS, la maggior parte dei quali, a causa della loro specificità e della complessità del calcolo delle risorse spese, soffrono della difficoltà di prevedere il costo del lavoro. Molte persone si trovano ad affrontare difficoltà e spesso addirittura l'impossibilità di calcolare correttamente la potenza utilizzata. Il punteggio effettivo potrebbe differire significativamente da quello previsto. 

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Inoltre, Azure, oltre a questi piani, dispone di servizi a pagamento separati: dominio del servizio app, certificati del servizio app di Azure e connessioni SSL. Tutti riguardano l'amministrazione della vostra infrastruttura; non li toccheremo.
In molte recensioni, gli utenti lamentano la complessa politica dei prezzi e l'incapacità di prevedere il costo del servizio. Il calcolatore proposto da Microsoft viene definito inutile e il servizio stesso è estremamente costoso.

Riepilogo su Azure

Il servizio Azure di Microsoft è uno strumento funzionale e stabile da utilizzare come principale provider MBaaS. Il fatto che il servizio fornisca inizialmente un'infrastruttura completa apre molte opportunità per l'ulteriore sviluppo del tuo backend oltre alle applicazioni mobili. Un gran numero di server e un ampio numero di regioni in cui si trovano ti aiutano a scegliere quelli più adatti a te in termini di latenza. Le recensioni positive degli utenti lo confermano. Gli aspetti negativi includono un'elevata barriera all'ingresso e la difficoltà nel prevedere il costo del servizio.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Si adatta? Utilizzando questi collegamenti puoi conoscere Microsoft Azure in modo più dettagliato, studiare tutti i dettagli e iniziare a utilizzarlo: 

AWS Amplifica

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Amazon Web Services (AWS) è il secondo IaaS ad essere incluso nella nostra selezione. Rappresenta un numero enorme di servizi ed è interessante in quanto, per analogia con Microsoft Azure, ha un set di funzionalità dedicato chiamato AWS Amplifica, che è essenzialmente un backend mobile. In precedenza, potresti aver sentito il nome AWS Mobile Hub, che è stato per lungo tempo il servizio principale che fornisce funzionalità MBaaS. Come scrivere Amazon stessa, Amplify è un Mobile Hub modificato e migliorato, che risolve i principali problemi del suo predecessore.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Secondo Amazon, molte grandi aziende, tra cui Netflix, Airbnb e molte altre, si affidano al servizio Amplify.

MBaaS

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

La soluzione mobile di Amazon ti consente di configurare rapidamente tutte le funzionalità necessarie per un'applicazione mobile. Che si tratti di logica del server, archiviazione dei dati, autorizzazione dell'utente o elaborazione e distribuzione dei contenuti, notifiche e analisi. 

Amazon fornisce anche tutte le disposizioni necessarie in termini di infrastruttura come scalabilità, bilanciamento del carico e molto altro.

Analitica

Un servizio separato è responsabile dell'analisi Pinpoint Amazon, in cui puoi segmentare il tuo pubblico e condurre campagne di targeting su larga scala attraverso diversi canali (notifiche push, SMS ed e-mail) per attirare gli utenti al servizio.

Pinpoint fornisce dati in tempo reale, puoi creare segmenti di pubblico dinamici, analizzare il loro coinvolgimento e ottimizzare la tua strategia di marketing basata su questi dati.

Funzionalità aggiuntive

Amazon Amplify fornisce l'accesso al servizio Fattoria di dispositivi AWS per testare la tua applicazione su dispositivi reali. Il servizio ti consente di condurre test automatizzati paralleli delle tue applicazioni su più dispositivi fisici; è disponibile anche il test manuale.

Servizio Console AWS Amplify è uno strumento per la distribuzione e l'hosting di risorse server e applicazioni Web con la possibilità di configurare CI/CD per automatizzare il processo di sviluppo.

Insolita è anche la possibilità di introdurre bot vocali e di testo nelle applicazioni mobili “out of the box” come interfaccia per l’interazione dell’utente. Funziona sul servizio Amazon-Lex.

È interessante notare che AWS Amplify fornisce anche un piccolo biblioteca componenti dell'interfaccia utente già pronti per la tua applicazione React Native, che possono servire come una leggera accelerazione del processo di sviluppo o essere utilizzati in un prototipo o MVP del tuo progetto.

Difficoltà di integrazione

Amazon Amplify fornisce un SDK per iOS, Android, JavaScript и React Native e abbastanza dettagliato documentazione. È importante notare che oltre a REST, il servizio supporta anche GraphQL.

Come discusso durante l'analisi di Azure, un'elevata barriera all'ingresso è un problema comune a tutti i servizi IaaS. Amazon non fa eccezione, anzi. Questo è probabilmente uno dei servizi più difficili da comprendere. Ciò è dovuto al gran numero di strumenti diversi di cui dispone AWS. Padroneggiare AWS da zero richiederà molto tempo. Ma se ti limiti solo ad Amplify, puoi implementare una soluzione funzionante in tempi adeguati.

Affidabilità

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Secondo le statistiche, il servizio di Amazon sembra meno stabile di Azure. Ma il numero limitato di chiusure totali (globuli rossi) è incoraggiante. Fondamentalmente, tutto ciò che accade sono avvisi e instabilità nel funzionamento di alcuni servizi.

Ciò è confermato dall'elenco degli incidenti recenti sui server AWS: alcuni di essi sono avvisi di durata variabile (a volte fino a 16 ore) e l'ultima volta che i server sono stati inattivi è stato a metà giugno. Nel complesso sembra abbastanza stabile.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

costo

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Politica dei prezzi Amazon Web Services è molto semplice a prima vista: paga solo per ciò che utilizzi, oltre il limite gratuito. Ma come con Microsoft Azure, più servizi si utilizzano, più è difficile prevedere il costo finale dell’opera.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Ci sono molte recensioni su Internet che definiscono AWS troppo costoso. Che dire se da tempo sono apparse aziende che, a pagamento, sono pronte a ottimizzare l'utilizzo di AWS, riducendo al minimo le bollette mensili. 

Riepilogo su Amazon Amplify

Nel complesso, la storia di Amazon Amplify è simile a quella di Azure. In molti modi, la funzionalità è simile a MBaaS, fornendo un'infrastruttura completa e la possibilità di sviluppare il proprio backend. Gli strumenti di marketing di Amazon si distinguono positivamente, in particolare Pinpoint.

Di negativo, ricordiamo che la barriera d'ingresso non è meno alta di quella di Azure, e le stesse difficoltà nel prevedere i costi. Aggiungiamo a questo un servizio meno stabile e, a giudicare dalle recensioni, un supporto tecnico che non risponde.

Si adatta? Segui questi collegamenti per saperne di più su Amazon Amplify, conoscere tutti i dettagli e iniziare a utilizzarlo: 

Google Firebase

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili
Servizio Firebase di Google è una delle opzioni più interessanti come servizio MBaaS per la tua applicazione. Si è affermato da tempo come uno strumento utile ed è tale per molte applicazioni ben note: Shazam, Duolingo, Lyft e altre. 
Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

MBaaS

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Firebase si prende cura di tutto ciò di cui avrà bisogno la tua app mobile. Il servizio combina funzionalità di backend complete, come archiviazione dei dati, sincronizzazione, autenticazione, funzioni cloud (esecuzione di codice backend) ed è attualmente in versione beta Kit di apprendimento automatico, con l'aiuto del quale nell'applicazione vengono implementate varie funzionalità basate sull'apprendimento automatico (riconoscimento di testo, oggetti nelle fotografie e molto altro). 

Analitica

Una caratteristica importante di Firebase è che oltre alle funzionalità di backend, il servizio offre anche un'ampia gamma di funzionalità per l'analisi delle applicazioni. Google Analytics integrato, segmentazione della base utenti e funzionamento con notifiche push. Sempre nel 2017, Google ha fatto una bella acquisizione acquistando il diffusissimo servizio Fabric e integrandolo in Firebase insieme a Crashlytics, uno strumento estremamente utile per tenere traccia degli errori dell'applicazione e raccogliere statistiche e report sui crash avvenuti sui dispositivi degli utenti.

Funzionalità aggiuntive

Firebase fornisce uno strumento Collegamenti dinamici Firebase per elaborare collegamenti dinamici ai tuoi contenuti, utilizzando questo strumento puoi generare collegamenti che portano all'applicazione, se è installata e, in caso contrario, inviare l'utente all'App Store o a Google Play per l'installazione. Inoltre, tali collegamenti funzionano a seconda del dispositivo su cui vengono aperti: se si tratta di un computer, la pagina verrà aperta nel browser e, se si tratta di un dispositivo, avverrà il passaggio all'applicazione.

Google ti consente anche di eseguire test A/B sulle tue applicazioni utilizzando Test A/B di Firebase e impostare la configurazione remota con lo strumento Configurazione remota

Difficoltà di integrazione

Diventa chiaro che questo servizio combina un numero estremamente elevato di funzionalità per la tua applicazione. Per l'integrazione Firebase dovresti usare SDK piattaforme necessarie, tra cui iOS, Android, JavaScript, nonché C++ e Unity, che saranno molto utili se sviluppi giochi. È importante notare che Firebase dispone di una documentazione abbastanza dettagliata e di un'ampia base di utenti di sviluppatori e, di conseguenza, di una grande quantità di contenuti di supporto online, che si tratti di risposte a domande o articoli di revisione.

Affidabilità

Se dovresti fare affidamento su Google è una domanda per un articolo separato. Da un lato hai un fornitore altamente stabile e funzionante, ma dall’altro non sai mai quando “Google chiuderà anche questo servizio”. Non per niente Google è stata rimossa dalla sua missione "Non essere cattivo"

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Quando un fornitore dispone di tali risorse, sembrerebbe che il tempo di attività dovrebbe tendere al 100%, ma puoi comunque trovare molte segnalazioni di problemi con il servizio, ad esempio, citare uno degli utenti: “Si verificano tempi di inattività. Nel caso di Firebase, si potrebbe dire che il "tempo di attività" si verifica". E in effetti, se guardi le statistiche sugli eventi con i servizi Firebase, vedremo che ci sono sia piccoli tempi di inattività che interruzioni complete per 5-7 ore, questo può essere fondamentale per il tuo servizio.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

E a volte i problemi durano settimane. Non dobbiamo dimenticare che questi servizi possono eseguire codice critico e vitale per il prodotto. Questa statistica non sembra molto incoraggiante.

costo

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Politica dei prezzi Firebase è chiaro e semplice, ci sono 3 piani: Spark, Flame e Blaze. Sono ideologicamente diversi l'uno dall'altro. Mentre Spark è un piano gratuito con limiti che ti consentono di distribuire e testare gran parte delle funzionalità della piattaforma. I piani Flame e Blaze richiedono un utilizzo a pagamento. Flame costa fissamente $ 25 al mese, ma essenzialmente ottieni lo stesso Spark, solo con limiti significativamente più alti. 

Blaze è diverso dagli altri. Ti consente di utilizzare le funzionalità della piattaforma in quantità illimitate, pagando in proporzione alle risorse utilizzate. Questo è un piano estremamente flessibile in cui paghi solo per le funzionalità che utilizzi. Se, ad esempio, decidi di utilizzare la piattaforma solo per testare le applicazioni, pagherai solo il superamento dei limiti di test gratuiti.

In generale, i prezzi di Firebase sono molto trasparenti e prevedibili. Nel processo, capisci quanto costerà questa o quella funzionalità e calcoli anche il costo quando ridimensioni o apporti modifiche al servizio.

Riepilogo di Firebase

Firebase di Google è un provider MBaaS completo che elimina le complessità dell'infrastruttura che AWS e Azure coinvolgono direttamente. Sono presenti tutte le funzionalità necessarie per lo sviluppo di un backend cloud, ampie opportunità di analisi, relativa facilità di integrazione, una barriera all'ingresso abbastanza bassa e prezzi trasparenti. 

Tra gli aspetti negativi ci sono i problemi con la stabilità del servizio. Sfortunatamente non c’è modo di influenzarlo; possiamo fare affidamento solo sugli ingegneri di Google.
Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili
È giusto per te? Utilizzando questi collegamenti puoi conoscere Google Firebase in modo più dettagliato, studiare tutti i dettagli e iniziare a utilizzarlo: 

Kumuli

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Kumuli è un servizio MBaaS indipendente fondato nel 2011. 

MBaaS

Come backend mobile, Kumulos offre molti strumenti standard che abbiamo già visto nei servizi precedenti. È anche possibile creare campagne complete basate su pianificazione e geolocalizzazione, monitoraggio e diagnosi di arresti anomali, comoda integrazione con Slack, Trello e Jira, archiviazione dei dati ed elaborazione delle autorizzazioni degli utenti.

Come Firebase, il servizio si occupa di tutti i problemi relativi al bilanciamento del carico, al ridimensionamento e ad altri problemi infrastrutturali.

Analitica

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Kumulos dispone di ampie capacità analitiche integrate, tra cui: generazione di report periodici, segmentazione degli utenti, analisi comportamentali dettagliate, analisi di coorte e molto altro. La piattaforma è stata originariamente creata per i Big Data ed è pronta a funzionare con grandi quantità di dati. Tutte le analisi vengono visualizzate in tempo reale. Il motore analitico interno prevede vari approfondimenti sulla base delle statistiche raccolte.

Una caratteristica importante è la possibilità di archiviare ed esportare dati verso altri servizi, tra cui: Salesforce, Google BigQuery, Amplitude e Tableau.

Funzionalità aggiuntive

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Una funzionalità interessante e raramente vista è uno strumento per ottimizzare la promozione delle applicazioni nell'App Store. Ottimizzazione dell'App Store Kumulos valuta la pagina della tua applicazione e suggerisce soluzioni per migliorare le prestazioni. Tiene traccia dei fattori di successo delle app come le valutazioni degli utenti e il posizionamento delle app in diversi paesi e genera report basati su questi dati. 

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

È estremamente interessante disporre di strumenti speciali per gli studi di sviluppo mobile, che forniscono un'interfaccia comoda per la gestione dei dati delle applicazioni per vari clienti. Oltre a generare report specifici per i tuoi clienti.

Difficoltà di integrazione

A Kumulos ampia gamma di SDK per l'integrazione con strumenti nativi e multipiattaforma. Le biblioteche vengono aggiornate e supportate attivamente.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

Tutti gli strumenti hanno una documentazione dettagliata e ci sono anche diversi tutorial ed esempi già pronti sull'utilizzo della piattaforma.

Affidabilità

Purtroppo non sono riuscito a trovare alcuna statistica sulla stabilità dei server del servizio Kumulos.

costo

Oltre alla prova gratuita, Kumulos ne ha 3 piano a pagamento: Startup, Impresa e Agenzia. Funzionano secondo il principio “pago solo per quello che utilizzo”. Purtroppo il servizio non prevede un listino prezzi di pubblico dominio; sembra che venga calcolato individualmente in base alle vostre esigenze.

Panoramica dei servizi cloud per lo sviluppo back-end di app per dispositivi mobili

È impossibile parlare con precisione della prevedibilità e dell’entità dei pagamenti senza conoscere le tariffe stesse per tutti i piani. Una cosa positiva è che, a quanto pare, i prezzi sono abbastanza flessibili.

Riepilogo per Kumulos

Kumulos fornisce una piattaforma MBaaS molto simile a Firebase. Contiene l'intero set necessario di strumenti di servizio MBaaS, funzionalità di analisi e reporting piuttosto estese. Un'offerta separata per gli studi di applicazioni mobili sembra interessante, poiché unisce molti vantaggi aggiuntivi.

Il lato negativo è la mancanza di dati sulla stabilità del server e sui prezzi chiusi.

Vale la pena provare? Usando questi link puoi conoscere Kumulos in modo più dettagliato, studiare tutti i dettagli e iniziare a usarlo: 

conclusione

È importante affrontare la questione della scelta di un servizio cloud per un backend mobile con tutta serietà, poiché avrà un impatto drammatico sul processo di sviluppo e sul successivo sviluppo della tua applicazione o servizio. 

Nell'articolo abbiamo esaminato 4 servizi: Microsoft Azure, AWS Amplify, Google Firebase e Kumulos. Tra questi ci sono 2 grandi servizi IaaS e 2 MBaaS, specializzati specificamente nel backend mobile. E in ciascuna delle opzioni abbiamo riscontrato alcuni problemi e aspetti negativi.

È importante capire che non esiste una soluzione ideale. La selezione di una tecnologia per un progetto è un compromesso tra fattori chiave. Suggerisco di esaminarli di nuovo:

funzionalità

La funzionalità della piattaforma che scegli determina direttamente le restrizioni che imponi al tuo backend. Dovresti sempre essere chiaro su quali sono le tue priorità quando scegli un servizio, sia che si tratti di utilizzare una funzionalità specifica, ad esempio, notifiche push per risparmiare denaro, o di costruire la tua infrastruttura all'interno di un ecosistema per centralizzare e uniformare il tuo backend. 

Analitica

È difficile immaginare servizi moderni senza analisi. Dopotutto, è questo strumento che ti consente di migliorare il servizio, analizzare gli utenti e, in definitiva, ottenere maggiori profitti. La qualità e la funzionalità dell'analisi determinano direttamente la qualità del prodotto finale. Ma nessuno ti disturba a collegare analisi di terze parti, che si tratti della parte analitica di Firebase, AppMetrica di Yandex o qualcos'altro che è più adatto a te.

Difficoltà di integrazione

La complessità dell'integrazione influisce direttamente sui costi delle risorse sia monetarie che temporali durante il processo di sviluppo, per non parlare della possibile complicazione del processo di ricerca degli sviluppatori a causa dell'impopolarità o di un'elevata barriera all'ingresso nel toolkit.

Affidabilità e stabilità

L'affidabilità e la stabilità di qualsiasi servizio sono uno degli indicatori più importanti. E quando la tua applicazione soffre di problemi da parte del provider, la situazione non è piacevole. All'utente finale non interessa cosa c'è che non va e se è colpa tua se il servizio non funziona. Non sarà in grado di realizzare ciò che aveva pianificato e basta, l'impressione è rovinata, potrebbe non tornare mai più al prodotto. Sì, non esistono servizi perfetti, ma esistono strumenti per ridurre al minimo le perdite in caso di problemi da parte del fornitore.

Politica dei prezzi

La politica dei prezzi del servizio è un fattore determinante per molti, poiché se le capacità finanziarie non corrispondono alle richieste del fornitore, semplicemente non potrete continuare a lavorare insieme. È importante considerare e prevedere il costo dei servizi da cui dipende il tuo prodotto. Il prezzo è diverso per ogni servizio, ma molto spesso è proporzionale alle risorse utilizzate, sia il numero di notifiche inviate o la dimensione del disco rigido di archiviazione utilizzato.

Blocco del venditore

Quando si utilizzano questi servizi, è importante non rimanere bloccati su una soluzione, altrimenti diventerai completamente dipendente da essa e ti condannerai al cosiddetto “vendor lock”. Ciò significa che se succede qualcosa al servizio, cambia il proprietario, la direzione dello sviluppo o chiude, dovrai cercare urgentemente un nuovo fornitore MBaaS e, a seconda delle dimensioni dell'applicazione, tale spostamento richiederà molto tempo e, di conseguenza, costi monetari. Sarebbe particolarmente spaventoso se il backend fosse legato ad alcune funzionalità uniche del provider MBaaS, poiché tutti i provider sono diversi e non tutti hanno lo stesso set di funzionalità. Pertanto, è raro che sia possibile muoversi “senza dolore”.

L’intera analisi può in definitiva essere descritta nella tabella:

Microsoft Azure

AWS Amplifica

Google Firebase

Kumuli

Strumenti MBaaS
notifiche push, sincronizzazione dei dati, 
ridimensionamento automatico e bilanciamento del carico e molto altro ancora

Analitica

Analisi in tempo reale

Analisi e campagne di targeting in Amazon Pinpoint

Google Analytics e Crashlytics per la raccolta di rapporti sugli arresti anomali

Analisi in tempo reale, analisi di coorte, lavoro con Big Data ed esportazione verso altri servizi

Funzionalità aggiuntive

  1. Costruisci l'automazione
  2. Quadro di geolocalizzazione
  3. Strumento di intelligenza artificiale
  4. Molti altri servizi di Azure

  1. Fattoria di dispositivi
  2. Consolle amplificata
  3. Amazon-Lex
  4. Molti altri servizi AWS

  1. Collegamenti dinamici
  2. Test A / B
  3. Configurazione remota

  1. Ottimizzazione dell'applicazione nell'App Store. 
  2. Funzionalità per lo sviluppo in studio

integrazione

  1. SDK: iOS, Android, Xamarin, PhoneGap
  2. Elevata barriera all'ingresso

  1. SDK: iOS, Android, JS, React Native
  2. Supporto GraphQL
  3. Elevata barriera all'ingresso

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

SDK: IOS, Android, WP, Cordova, PhoneGap, Xamarin, Unity, LUA Corona e molti altri

Affidabilità e stabilità

Interruzioni estremamente rare (fino a una volta al mese)

Interruzioni rare, per lo più avvisi

Ci sono periodi problematici e interruzioni

Nessuna statistica disponibile

Politica dei prezzi

  1. Calcolato dalle risorse utilizzate
  2. Difficoltà di previsione
  3. Il costo è superiore a quello dei servizi MBaaS

  1. Scintilla (gratuito)
  2. Fiamma ($25/m)
  3. Blaze (per utilizzo)

  1. Startup
  2. Impresa
  3. Agenzia

Tutti i piani prevedono una tariffa di utilizzo

Quindi, abbiamo esaminato 4 servizi cloud. Esistono dozzine di strumenti simili. Non esiste un servizio perfetto, quindi la strategia migliore per trovare quello giusto è comprendere le tue esigenze per un fornitore e i compromessi che sei disposto a fare il prima possibile. 
Ti auguriamo di fare la scelta giusta.

Dati di stabilità presi dal servizio https://statusgator.com/
Dati sulle valutazioni degli utenti presi dal servizio www.capterra.com

Solo gli utenti registrati possono partecipare al sondaggio. AccediPer favore.

Quale servizio hai utilizzato come backend per la tua applicazione?

  • Microsoft Azure

  • AWS Amplify (o AWS Mobile Hub)

  • Google Firebase

  • Kumuli

  • Altro (lo indicherò nei commenti)

16 utenti hanno votato. 13 utenti si sono astenuti.

Fonte: habr.com

Aggiungi un commento