Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang backend development ay isang kumplikado at magastos na proseso. Kapag bumubuo ng mga mobile application, madalas itong binibigyan ng hindi makatwirang pansin. Ito ay hindi makatwiran, dahil sa bawat oras na kailangan mong ipatupad ang mga tipikal na sitwasyon para sa mga mobile application: magpadala ng push notification, alamin kung gaano karaming mga user ang interesado sa promosyon at mag-order, atbp. Gusto ko ng isang solusyon na magpapahintulot sa iyo na tumuon sa mga bagay na mahalaga para sa aplikasyon nang hindi nawawala ang kalidad at mga detalye sa pagpapatupad ng mga pangalawang. At may mga solusyon!

Ang mga naturang serbisyo ay tinatawag na Mobile Backend-as-a-Service (MBaaS). Ang mga proseso ng paglikha ng isang backend sa kanilang tulong ay pinasimple kumpara sa pag-unlad na "manu-mano". Ito ang matitipid sa pagkuha ng hiwalay na backend developer. At ang katotohanan na pinangangasiwaan ng provider ng MBaaS ang lahat ng mga isyu na may kaugnayan sa katatagan ng server, pagbabalanse ng load, scalability at iba pang kahirapan sa imprastraktura ay nagbibigay ng kumpiyansa sa kalidad ng resulta at ito ang pangunahing bentahe ng mga naturang serbisyo.

Sa artikulong ito, titingnan natin ang ilang malalaki at napatunayang serbisyo: Microsoft Azure, AWS Amplify, Google Firebase, Kumulos.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang mga punto kung saan namin isasaalang-alang ang mga serbisyo: ang functionality ng backend at analytics, ang pagiging kumplikado ng pagsasama ng serbisyo, ang pagiging maaasahan at katatagan ng trabaho, at ang patakaran sa pagpepresyo. Suriin natin ang bawat serbisyo at tandaan ang kanilang mga tampok ayon sa mga pamantayang ito.

Microsoft Azure

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Microsoft Azure - Ang Infrastructure-As-A-Service (IaaS) ay isang serbisyo na naglalaman ng ganap na functionality ng BaaS at tumutulong sa paggawa ng backend para sa mga mobile application.

MBAaS

Microsoft Azure ay may buong hanay ng functionality para sa paglikha ng backend para sa isang mobile application. Pinoproseso ang mga push notification, awtomatikong pag-scale, pag-synchronize ng data, pagsasama ng social media at higit pa.

Ang isang mahalagang tampok ng Azure ay ang heograpikal na lokasyon ng mga server. Ang mga ito ay matatagpuan sa 54 na mga rehiyon ng mundo, na nagpapataas ng posibilidad na pumili ng isang server na nababagay sa iyo sa mga tuntunin ng latency. Dahil ang ilang mga rehiyon lamang ang madalas na nagdurusa sa kaganapan ng isang madepektong paggawa, maaaring ipagpalagay na ang mas maraming mga rehiyon, mas maliit ang posibilidad na makarating sa napaka "hindi matatag". Sinasabi ng Microsoft na mayroong higit pang mga rehiyon kaysa sa iba pang cloud provider. Ito ay tiyak na isang plus.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Analitika

Ang serbisyo ay nagbibigay ng kakayahang subaybayan ang pagganap ng mga application sa real time at mangolekta ng mga ulat sa "falls". Nagbibigay-daan ito sa iyo na agad na mai-localize at malutas ang problema.

Gayundin sa Azure, maaari mong gamitin ang kanilang sariling library upang mangolekta ng analytics sa mga application: mangolekta ng mga pangunahing sukatan (impormasyon ng device, impormasyon ng session, aktibidad ng user, at higit pa) at lumikha ng mga custom na kaganapan para sa pagsubaybay. Ang lahat ng nakolektang data ay agad na na-export sa Azure, na nagbibigay-daan sa iyong magsagawa ng analytical na gawain sa kanila sa isang maginhawang format

Karagdagang pag-andar

Mayroon ding mga kawili-wiling feature tulad ng pagsubok na binuo ng application sa mga tunay na device, mga setting ng CI/CD para i-automate ang proseso ng pag-develop, at mga tool para sa pagsusumite ng mga build ng application para sa beta testing o direkta sa App Store o Google Play.

Binibigyang-daan ka ng Azure na gumamit ng out-of-the-box na framework na idinisenyo upang gumana sa mga mapa at geospatial na data, na ginagawang mas madaling gamitin ang format na ito.

Ang partikular na interes ay ang posibilidad ng paglutas ng mga problema gamit artipisyal na katalinuhan, kung saan maaari mong mahulaan ang iba't ibang mga analytical indicator at gumamit ng mga tool na handa nang gamitin para sa computer vision, speech recognition, at marami pang iba.

Pagiging kumplikado ng pagsasama

Ang serbisyo ng Microsoft Azure ay nagbibigay SDK para sa mga pangunahing mobile platform (iOS at Android) at, na bihira, para sa mga cross-platform na solusyon (Xamarin at PhoneGap). 

Sa pangkalahatan, ang mga gumagamit ay nagreklamo tungkol sa kumplikadong interface at ang mataas na hadlang sa pagpasok. Ito ay nagpapahiwatig ng mga posibleng problema sa pagsasama ng serbisyo. 

Mahalagang maunawaan na ang isang mataas na threshold sa pagpasok ay hindi isang espesyal na kaso sa Azure, ngunit isang pangkalahatang problema para sa IaaS. Halimbawa, ang Amazon Web Services, na tatalakayin sa susunod, ay mas madaling kapitan ng sakit na ito.

Pagkamaaasahan

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang katatagan ng serbisyo mula sa Microsoft ay mukhang disente. Ito ay makikita na hindi bababa sa isang beses sa isang buwan ay maaaring magkaroon ng panandaliang mga problema sa iba't ibang mga rehiyon. Ang larawang ito ay nagsasalita ng sapat na katatagan ng serbisyo, ang mga problema ay bihirang mangyari, sa ilang mga rehiyon at naayos nang napakabilis, na nagpapahintulot sa serbisyo na mapanatili ang isang disenteng uptime. 

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Kinumpirma ito ng listahan ng mga kamakailang insidente sa mga server ng Azure - karamihan sa mga ito ay mga panandaliang babala, at ang huling beses na nabawasan ang mga server ay noong unang bahagi ng Mayo. Kinukumpirma ng mga istatistika ang larawan ng matatag na serbisyo.

Gastos

Π’ Pagpepresyo ng patakaran Ang Microsoft Azure ay may iba't ibang mga rate ng pagbabayad para sa serbisyo, mayroon ding libreng plano na may ilang mga limitasyon, na sapat para sa pagsubok. Mahalagang tandaan na ang Azure ay isang serbisyo ng IaaS, karamihan sa mga ito, dahil sa kanilang mga detalye at ang pagiging kumplikado ng pagkalkula ng mga nagastos na mapagkukunan, ay dumaranas ng kahirapan sa paghula sa halaga ng trabaho. Maraming tao ang nahaharap sa mga paghihirap at madalas kahit na ang kawalan ng kakayahan upang wastong kalkulahin ang mga kapasidad na ginamit. Ang totoong account ay maaaring mag-iba nang malaki mula sa inaasahan. 

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Gayundin, ang Azure, bilang karagdagan sa mga planong ito, ay may hiwalay na bayad na mga serbisyo: App Service Domain, Azure App Service Certificates at SSL Connections. Lahat po yan ay may kinalaman sa pangangasiwa ng inyong imprastraktura, hindi po namin sila tatantanan.
Sa maraming mga pagsusuri, ang mga gumagamit ay nagreklamo tungkol sa kumplikadong patakaran sa pagpepresyo at ang kawalan ng kakayahang mahulaan ang halaga ng serbisyo. Ang calculator na iminungkahi ng Microsoft ay tinatawag na walang silbi, at ang serbisyo mismo ay napakamahal.

Bottom line para kay Azure

Ang serbisyo ng Azure ng Microsoft ay isang functional at stable na tool para gamitin bilang pangunahing provider ng MBaaS. Ang katotohanan na ang serbisyo sa simula ay nagbibigay ng kumpletong imprastraktura ay nagbubukas ng maraming pagkakataon para sa karagdagang pag-unlad ng iyong backend na lampas sa mga mobile application. Ang isang malaking bilang ng mga server at isang malawak na bilang ng mga rehiyon kung saan sila matatagpuan ay tumutulong sa iyong piliin ang tamang latency para sa iyo. Kinumpirma ito ng mga positibong review ng user. Sa mga negatibong punto - isang mataas na threshold ng pagpasok at kahirapan sa paghula sa halaga ng serbisyo.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Nababagay? Sundin ang mga link na ito para mas makilala ang Microsoft Azure, alamin ang lahat ng detalye at simulang gamitin ito: 

AWS Palakihin

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Amazon Web Services (AWS) ay ang pangalawang IaaS na nakarating sa aming napili. Kinakatawan nito ang isang malaking bilang ng mga serbisyo at kawili-wili dahil, sa pamamagitan ng pagkakatulad sa Microsoft Azure, mayroon itong nakalaang hanay ng pag-andar na tinatawag na AWS Palakihin, na mahalagang backend ng mobile. Dati, maaaring narinig mo na ang pangalang AWS Mobile Hub, na matagal nang pangunahing serbisyo na nagbibigay ng functionality ng MBAaS. Paano isulat Ang Amazon mismo, ang Amplify ay isang binago at pinahusay na Mobile Hub na lumulutas sa mga pangunahing problema ng hinalinhan nito.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ayon sa Amazon, ang Amplify ay pinagkakatiwalaan ng maraming malalaking kumpanya, kabilang ang Netflix, Airbnb, at marami pang iba.

MBAaS

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Binibigyang-daan ka ng mobile solution ng Amazon na mabilis na i-configure ang lahat ng kinakailangang functionality para sa isang mobile application. Maging ito ay lohika ng server, imbakan ng data, pahintulot ng user o pagpoproseso at paghahatid ng nilalaman, mga notification at analytics. 

Nagbibigay din ang Amazon ng lahat ng kinakailangang kundisyon sa mga tuntunin ng imprastraktura, tulad ng pag-scale, pagbalanse ng load, at higit pa.

Analitika

Ang isang hiwalay na serbisyo ay responsable para sa analytics Pinpoint ng Amazon, kung saan maaari mong i-segment ang madla at magsagawa ng malakihang mga kampanya sa pag-target sa pamamagitan ng iba't ibang channel (mga push notification, SMS at email) upang maakit ang mga user sa serbisyo.

Nagbibigay ang Pinpoint ng real-time na data, maaari kang lumikha ng mga dynamic na segment ng audience, suriin ang kanilang pakikipag-ugnayan at i-optimize ang iyong diskarte sa marketing batay sa data na ito.

Karagdagang pag-andar

Nagbibigay ang Amazon Amplify ng access sa serbisyo AWS Device Farm upang subukan ang mga build ng iyong mga application sa mga totoong device. Binibigyang-daan ka ng serbisyo na magsagawa ng parallel na awtomatikong pagsubok ng iyong mga application sa iba't ibang pisikal na device, available din ang manu-manong pagsubok.

Tools AWS Amplify Console ay isang tool para sa pag-deploy at pagho-host ng parehong mga mapagkukunan ng server at mga web application na may kakayahang i-configure ang CI / CD upang i-automate ang proseso ng pagbuo.

Kakaiba rin ang posibilidad ng pagpasok ng voice at text bots sa mga mobile application β€œout of the box” bilang interface para sa pakikipag-ugnayan ng user. Gumagana ito sa serbisyo Ang Amazon Lex.

Kapansin-pansin, ang AWS Amplify ay nagbibigay din ng maliit ang library handa na mga bahagi ng UI para sa iyong React Native na application, na maaaring magsilbi bilang bahagyang pagpapabilis ng proseso ng pag-develop, o magamit sa isang prototype o MVP ng iyong proyekto.

Pagiging kumplikado ng pagsasama

Nagbibigay ang Amazon Amplify ng SDK para sa iOS, Android, JavaScript ΠΈ React Native at medyo detalyado. dokumentasyon. Mahalagang tandaan na bilang karagdagan sa REST, sinusuportahan din ng serbisyo ang GraphQL.

Tulad ng tinalakay sa proseso ng pagsusuri ng Azure, ang isang mataas na hadlang sa pagpasok ay isang karaniwang problema para sa lahat ng IaaS. Ang Amazon ay walang pagbubukod, medyo kabaligtaran. Ito marahil ang isa sa pinakamahirap na serbisyong unawain. Ito ay dahil sa malaking bilang ng iba't ibang tool na mayroon ang AWS. Ang pag-aaral ng AWS mula sa simula ay tatagal ng mahabang panahon. Ngunit kung lilimitahan mo lang ang iyong sarili sa Amplify, maaari mong ipatupad ang isang gumaganang solusyon sa isang sapat na time frame.

Pagkamaaasahan

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang serbisyo mula sa Amazon ay mukhang hindi gaanong matatag kaysa sa Azure. Ngunit ang maliit na bilang ng ganap na pagsasara (mga pulang selula) ay nakalulugod. Karaniwan, ang lahat ng nangyayari ay mga babala at kawalang-tatag sa ilang mga serbisyo.

Kinumpirma ito ng listahan ng mga kamakailang insidente sa mga server ng AWS - ang ilan sa mga ito ay mga babala na may iba't ibang tagal (minsan hanggang 16 na oras), at ang huling beses na nabawasan ang mga server ay noong kalagitnaan ng Hunyo. Sa pangkalahatan, mukhang medyo matatag.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Gastos

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Patakaran sa pagpepresyo Ang Amazon Web Services ay medyo simple sa unang tingin - magbayad lamang para sa kung ano ang iyong ginagamit, lampas at higit sa libreng limitasyon. Ngunit tulad ng sa Microsoft Azure, mas maraming serbisyo ang iyong ginagamit, mas mahirap hulaan ang kabuuang halaga ng trabaho.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Maraming mga pagsusuri sa Internet na tinatawag na masyadong mahal ang AWS. Ano ang masasabi natin, kung matagal nang lumitaw ang mga kumpanya na, para sa isang hiwalay na halaga, ay handang i-optimize ang iyong paggamit ng AWS, na binabawasan ang mga buwanang singil hangga't maaari. 

Amazon Amplify Bottom Line

Sa pangkalahatan, ang kuwento sa Amazon Amplify ay katulad ng Azure. Sa maraming paraan, ang parehong functionality para sa MBaaS, na nagbibigay ng ganap na imprastraktura at kakayahang bumuo ng sarili mong backend. Ang mga tool sa marketing sa Amazon ay positibong namumukod-tangi, lalo na, Pinpoint.

Sa negatibong panig, naaalala namin ang hindi gaanong mataas na threshold ng pagpasok kaysa sa Azure, at ang parehong mga paghihirap sa pagtataya ng gastos. Idagdag dito ang isang hindi gaanong matatag na serbisyo at, batay sa mga review, hindi tumutugon sa teknikal na suporta.

Nababagay? Sundin ang mga link na ito para matuto pa tungkol sa Amazon Amplify, alamin ang lahat ng detalye, at simulang gamitin ito: 

Google Firebase

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app
Tools Firebase mula sa Google ay isa sa mga pinakakawili-wiling opsyon bilang isang serbisyo ng MBAaS para sa iyong aplikasyon. Matagal nang itinatag ang sarili bilang isang kapaki-pakinabang na tool at para sa maraming kilalang application: Shazam, Duolingo, Lyft at iba pa. 
Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

MBAaS

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Inaasikaso ng Firebase ang lahat ng kailangan ng iyong mobile app. Pinagsasama ng serbisyo ang mga ganap na tampok sa backend, tulad ng pag-iimbak ng data, pag-synchronize, pagpapatotoo, mga pag-andar ng ulap (pagpapatupad ng backend code), at kasalukuyang nasa beta. Machine Learning Kit, kung saan ang application ay nagpapatupad ng iba't ibang functionality batay sa machine learning (pagkilala sa teksto, mga bagay sa mga litrato, at marami pang iba). 

Analitika

Ang isang mahalagang feature ng Firebase ay na bilang karagdagan sa backend functionality, nag-aalok din ang serbisyo ng malawak na hanay ng mga opsyon para sa analytics ng application. Built-in na Google Analytics, user base segmentation at push notification. Noong 2017 din, gumawa ang Google ng malaking pagkuha sa pamamagitan ng pagbili ng malawakang ginagamit na serbisyo ng Fabric at pagsasama nito sa Firebase kasama ng Crashlytics, isang napaka-kapaki-pakinabang na tool para sa pagsubaybay sa mga bug ng app at pangangalap ng mga istatistika at ulat sa mga pag-crash na naganap sa mga device ng mga user.

Karagdagang pag-andar

Nagbibigay ang Firebase ng tool Mga Dynamic na Link ng Firebase upang iproseso ang mga dynamic na link sa iyong nilalaman, gamit ang tool na ito maaari kang bumuo ng mga link na humahantong sa application kung ito ay naka-install, kung hindi, ipapadala nila ang user sa App Store o Google Play para sa pag-install. Gayundin, gumagana ang mga naturang link depende sa device kung saan sila nagbubukas, kung ito ay isang computer, ang pahina ay bubuksan sa browser, at kung ang device ay isang transition sa application.

Pinapayagan ka rin ng Google na subukan ang iyong mga application gamit ang A/B Firebase A/B Testing at i-set up ang malayuang pagsasaayos gamit ang tool Remote Config

Pagiging kumplikado ng pagsasama

Nagiging malinaw na ang serbisyong ito ay pinagsasama ang napakalaking bilang ng mga tampok para sa iyong aplikasyon. Para sa pagsasama ng Firebase, dapat mong gamitin SDK kinakailangang platform, kabilang ang iOS, Android, JavaScript, pati na rin para sa C ++ at Unity, na magiging lubhang kapaki-pakinabang kung bubuo ka ng mga laro. Mahalagang tandaan na ang Firebase ay may medyo detalyadong dokumentasyon at malawak na base ng user ng developer, at bilang resulta, maraming sumusuportang content sa web, ito man ay mga sagot sa mga tanong o pangkalahatang-ideya na mga artikulo.

Pagkamaaasahan

Kung aasa sa Google ay isang bagay para sa isang hiwalay na artikulo. Sa isang banda, mayroon kang lubos na matatag at gumaganang provider, at sa kabilang banda, hindi mo alam kung kailan "isasara din ng Google ang serbisyong ito." Hindi nakakagulat na inalis ang Google sa kanilang misyon "Wag kang masama"

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Kapag ang isang provider ay may ganoong mga mapagkukunan, mukhang 100% ang uptime, ngunit mahahanap mo pa rin ang maraming ulat ng mga problema sa serbisyo, halimbawa, quote isa sa mga gumagamit: Nangyayari ang downtime. Sa kaso ng Firebase, maaari mong sabihin na nangyayari ang "uptime". At sa katunayan, kung titingnan mo ang mga istatistika sa mga kaganapan sa mga serbisyo ng Firebase, makikita namin na parehong may maliliit na downtime at ganap na pagkawala sa loob ng 5-7 oras, maaari itong maging kritikal para sa iyong serbisyo.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

At kung minsan ang mga problema ay tumatagal ng ilang linggo. Hindi natin dapat kalimutan na ang mga serbisyong ito ay maaaring magpatakbo ng code na kritikal at mahalaga para sa produkto. Mukhang hindi masyadong masaya ang istatistikang ito.

Gastos

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Patakaran sa pagpepresyo Malinaw at simple ang Firebase, mayroong 3 plano: Spark, Flame at Blaze. Magkaiba sila ng ideolohiya sa isa't isa. Habang ang Spark ay isang libreng plano na may mga limitasyon na nagbibigay-daan sa iyong i-deploy at subukan ang isang mahalagang bahagi ng functionality ng platform. Ang mga plano ng Flame at Blaze ay may bayad na paggamit. Nagkakahalaga ang Flame ng nakapirming $25 bawat buwan, ngunit sa esensya nakakakuha ka ng parehong Spark, na may mas mataas na limitasyon. 

Iba si Blaze sa iba. Binibigyang-daan ka nitong gamitin ang mga kakayahan ng platform sa walang limitasyong dami, habang nagbabayad ka nang naaayon sa mga mapagkukunang ginagamit mo. Isa itong napaka-flexible na plano kung saan magbabayad ka lang para sa mga feature na ginagamit mo. Kung, halimbawa, magpasya kang gamitin ang platform para lamang sa mga application ng pagsubok, magbabayad ka lamang para sa paglampas sa mga limitasyon sa libreng pagsubok.

Sa kabuuan, ang pagpepresyo ng Firebase ay napaka-transparent at predictable. Sa proseso, nauunawaan mo kung magkano ito o ang functionality na iyon, at kalkulahin din ang gastos kapag nag-scale o nagbabago ng serbisyo.

Buod ng Firebase

Ang serbisyo ng Firebase ng Google ay isang ganap na MBaaS provider na naglilimita sa mga kumplikadong imprastraktura kung saan direktang nauugnay ang AWS at Azure. Ang lahat ng functionality na kinakailangan para sa pagbuo ng cloud backend ay nasa lugar, sapat na pagkakataon para sa analytics, relatibong kadalian ng pagsasama, medyo mababang entry threshold at transparent na pagpepresyo. 

Sa mga negatibong panig - mga problema sa katatagan ng serbisyo. Sa kasamaang palad, walang paraan upang maimpluwensyahan ito, maaari lamang kaming umasa para sa mga inhinyero ng Google.
Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app
Angkop para sa iyo? Sundin ang mga link na ito para mas makilala ang Google Firebase, alamin ang lahat ng detalye at simulang gamitin ito: 

Kumulos

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Kumulos ay isang independiyenteng serbisyo ng MBAaS na itinatag noong 2011. 

MBAaS

Bilang isang mobile backend, nag-aalok ang Kumulos ng maraming karaniwang tool na nakita na namin sa mga nakaraang serbisyo. Posible ring lumikha ng mga ganap na kampanya batay sa iskedyul at geo-lokasyon, pagsubaybay at pag-diagnose ng falls, maginhawang pagsasama sa Slack, Trello at Jira, pag-iimbak ng data at pagproseso ng awtorisasyon ng user.

Tulad ng Firebase, inaasikaso ng serbisyo ang lahat ng isyu sa load balancing, scaling, at iba pang isyu sa imprastraktura.

Analitika

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang Kumulos ay may malawak na analytics na nakapaloob dito, kabilang ang pana-panahong pag-uulat, pagse-segment ng user, detalyadong analytics ng pag-uugali, pagsusuri ng cohort, at higit pa. Ang platform ay orihinal na nilikha para sa Big Data at handang magtrabaho kasama ang malaking halaga ng data. Ang lahat ng analytics ay ipinapakita sa real time. Hinuhulaan ng internal analytical engine ang iba't ibang insight batay sa mga nakolektang istatistika.

Ang isang mahalagang feature ay ang kakayahang mag-imbak at mag-export ng data sa iba pang mga serbisyo, kabilang ang: Salesforce, Google BigQuery, Amplitude at Tableau.

Karagdagang pag-andar

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang isang kawili-wili at bihirang makitang feature ay isang tool para sa pag-optimize ng pag-promote ng app sa App Store. Kumulos App Store Optimization sinusuri ang iyong pahina ng aplikasyon at nagmumungkahi ng mga solusyon upang mapabuti ang pagganap. Sinusubaybayan ang mga salik ng tagumpay ng app gaya ng mga rating ng user at pagraranggo ng app sa mga nangungunang bansa, at bumubuo ng mga ulat batay sa data na iyon. 

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Mukhang lubhang kawili-wili ang pagkakaroon ng isang espesyal na toolkit para sa mga mobile development studio, na nagbibigay ng maginhawang interface para sa pamamahala ng data ng application para sa iba't ibang mga customer. Pati na rin ang pagbuo ng mga ulat na partikular para sa iyong mga kliyente.

Pagiging kumplikado ng pagsasama

Sa Kumulos malawak na hanay ng mga SDK para sa pagsasama sa parehong native at cross-platform na mga tool. Ang mga aklatan ay aktibong ina-update at pinapanatili.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Ang detalyadong dokumentasyon ay inilarawan para sa lahat ng mga tool, mayroon ding ilang mga tutorial at handa na mga halimbawa ng paggamit ng platform.

Pagkamaaasahan

Sa kasamaang palad, hindi ako makahanap ng anumang mga istatistika sa katatagan ng mga server ng serbisyo ng Kumulos.

Gastos

Bilang karagdagan sa libreng pagsubok, ang Kumulos ay mayroong 3 bayad na plano: Startup, Enterprise at Agency. Gumagana sila sa prinsipyo ng "Nagbabayad lang ako para sa ginagamit ko." Sa kasamaang palad, ang serbisyo ay hindi nagbibigay ng isang listahan ng presyo sa pampublikong domain, tila ito ay kinakalkula nang paisa-isa, batay sa iyong mga pangangailangan.

Pangkalahatang-ideya ng mga serbisyo sa cloud para sa pag-develop ng backend ng mobile app

Imposibleng tumpak na pag-usapan ang tungkol sa predictability at laki ng mga pagbabayad nang hindi nalalaman ang mga rate mismo para sa lahat ng mga plano. Isang bagay ang nakalulugod - tila, ang pagpepresyo ay medyo nababaluktot.

Total para sa Kumulos

Nagbibigay ang Kumulos ng platform ng MBaaS sa maraming paraan na katulad ng Firebase. Naglalaman ito ng lahat ng kinakailangang hanay ng mga tool sa serbisyo ng MBAaS, medyo malawak na analytics at mga kakayahan sa pag-uulat. Mukhang kawili-wili ito bilang isang hiwalay na alok para sa mga mobile application studio, na pinagsasama ang maraming karagdagang benepisyo.

Mula sa negatibo - ang kakulangan ng anumang data sa katatagan ng mga server at saradong pagpepresyo.

Worth a try? Sundin ang mga link na ito para mas makilala ang Kumulos, alamin ang lahat ng detalye at simulang gamitin ito: 

Konklusyon

Mahalagang seryosohin ang pagpili ng serbisyo sa cloud para sa mobile backend, dahil magkakaroon ito ng malaking epekto sa proseso ng pagbuo at kasunod na pag-develop ng iyong aplikasyon o serbisyo. 

Sa artikulo, sinuri namin ang 4 na serbisyo: Microsoft Azure, AWS Amplify, Google Firebase at Kumulos. Kabilang sa mga ito ang 2 malalaking serbisyo ng IaaS at 2 MBaaS, na partikular na nagdadalubhasa sa mobile backend. At sa bawat isa sa mga pagpipilian natugunan ang ilang mga problema at negatibong aspeto.

Mahalagang maunawaan na walang perpektong solusyon. Ang pagpili ng teknolohiya para sa isang proyekto ay isang kompromiso sa pagitan ng mga pangunahing salik. Iminumungkahi kong dumaan ka muli sa kanila:

Pag-andar

Ang functionality ng platform na pipiliin mo ay direktang nakakaapekto sa mga paghihigpit na ipinapataw mo sa iyong backend. Kailangan mong palaging maging malinaw tungkol sa iyong mga priyoridad kapag pumipili ng isang serbisyo, ito man ay gumagamit ng isang partikular na feature, gaya ng mga push notification para makatipid ng pera, o pagbuo ng sarili mong imprastraktura sa loob ng parehong ecosystem upang i-sentralize at i-uniform ang iyong backend. 

Analitika

Mahirap isipin ang mga modernong serbisyo nang walang analytics. Pagkatapos ng lahat, ang tool na ito ay nagbibigay-daan sa iyo upang mapabuti ang serbisyo, pag-aralan ang mga gumagamit at, bilang isang resulta, makakuha ng mas maraming kita. Ang kalidad ng panghuling produkto ay direktang nakasalalay sa kalidad at paggana ng analytics. Ngunit walang sinuman ang nag-abala upang ikonekta ang third-party na analytics, maging ito ang analytical na bahagi ng Firebase, AppMetrica mula sa Yandex, o iba pang bagay na mas angkop para sa iyo.

Pagiging kumplikado ng pagsasama

Ang pagiging kumplikado ng pagsasama ay direktang nakakaapekto sa mga gastos ng parehong pera at oras na mapagkukunan sa proseso ng pag-unlad, hindi pa banggitin ang posibleng komplikasyon ng proseso ng paghahanap ng mga developer dahil sa hindi popularidad o isang mataas na threshold para sa pagpasok sa toolkit.

Pagiging maaasahan at katatagan

Ang pagiging maaasahan at katatagan ng anumang serbisyo ay isa sa pinakamahalagang tagapagpahiwatig. At kapag ang iyong sariling aplikasyon ay dumaranas ng mga problema sa panig ng provider, ang sitwasyon ay hindi kaaya-aya. Walang pakialam ang end user kung ano ang mali doon at kung partikular kang sisihin sa katotohanang hindi gumagana ang serbisyo. Hindi niya magagawa ang pinlano niya, at iyon nga, spoiled ang impression, baka hindi na siya bumalik sa produkto. Oo, walang perpektong serbisyo, ngunit may mga tool upang mabawasan ang mga pagkalugi kung sakaling magkaroon ng mga problema sa panig ng provider.

Patakaran sa pagpepresyo

Ang patakaran sa pagpepresyo ng serbisyo ay isang kadahilanan sa pagtukoy para sa marami, dahil kung ang mga kakayahan sa pananalapi ay hindi tumutugma sa mga kahilingan ng provider, kung gayon ay hindi mo magagawang magpatuloy sa pagtatrabaho nang sama-sama. Mahalagang isaalang-alang at hulaan ang halaga ng mga serbisyo kung saan nakasalalay ang iyong produkto. Nag-iiba-iba ang pagpepresyo sa pagitan ng mga serbisyo, ngunit kadalasan ay proporsyonal ito sa mga mapagkukunang ginagamit mo, ito man ay ang bilang ng mga notification na ipinadala o ang laki ng iyong storage hard drive.

Kandado ng nagbebenta

Gamit ang mga serbisyong ito, mahalaga na huwag makaalis sa isang solusyon, kung hindi man ay lubos kang umaasa dito at ipahamak ang iyong sarili sa tinatawag na "vendor lock". Nangangahulugan ito na kung may nangyari sa serbisyo, nagbabago ang may-ari, ang direksyon ng pag-unlad o nagsasara, kailangan mong agarang maghanap ng bagong provider ng MBaaS, at, depende sa laki ng application, ang naturang paglipat ay mangangailangan ng makabuluhang oras at, bilang resulta, ang halaga ng pera. . Lalo na itong nakakatakot kung ang backend ay nakatali sa ilang natatanging functionality ng MBaaS provider, dahil ang lahat ng provider ay iba at hindi lahat ng mga ito ay may parehong hanay ng functionality. Samakatuwid, ito ay bihirang kapag posible na lumipat "walang sakit".

Ang buong pagsusuri ay maaaring ibuod sa talahanayan sa ibaba:

Microsoft Azure

AWS Palakihin

Google Firebase

Kumulos

Mga Tool ng MBAaS
push notification, pag-synchronize ng data, 
awtomatikong scaling at load balancing, at marami pang iba

Analitika

Real time na analytics

Analytics at mga kampanya sa pag-target sa Amazon Pinpoint

Google Analytics at Crashlytics para sa pagkolekta ng mga ulat ng pag-crash

Real-time na analytics, pagsusuri ng cohort, gumana sa Big Data at i-export sa iba pang mga serbisyo

Karagdagang pag-andar

  1. Bumuo ng Automation
  2. Balangkas ng geolocation
  3. tool ng AI
  4. Maraming iba pang serbisyo ng Azure

  1. Farm ng Device
  2. Amplify Console
  3. Ang Amazon Lex
  4. Marami pang ibang serbisyo ng AWS

  1. Mga Dynamic na Link
  2. A / B Testing
  3. Remote Config

  1. Pag-optimize ng app sa App Store. 
  2. Pag-andar para sa pagbuo ng studio

Pagsasama

  1. Mga SDK: iOS, Android, Xamarin, Phonegap
  2. Mataas na threshold ng pagpasok

  1. SDK: iOS, Android, JS, React Native
  2. Suporta sa GraphQL
  3. Mataas na threshold ng pagpasok

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

SDK: IOS, Android, WP, Cordova, PhoneGap, Xamarin, Unity, LUA Corona at marami pa

Pagiging maaasahan at katatagan

Napakabihirang mga shutdown (hanggang 1 beses bawat buwan)

Mga bihirang pagkawala, karamihan ay mga babala

May mga panahon ng problema at blackout

Walang stats

Patakaran sa pagpepresyo

  1. Kinakalkula mula sa mga ginamit na mapagkukunan
  2. Kahirapan sa pagtataya
  3. Mas mataas ang gastos kaysa sa mga serbisyo ng MBAaS

  1. Spark (libre)
  2. Apoy (25$/m)
  3. Blaze (bawat gamit)

  1. Startup
  2. enterprise
  3. Ahensiya

Ang lahat ng mga plano ay naniningil sa bawat paggamit

Kaya, sinuri namin ang 4 na serbisyo sa cloud. Mayroong dose-dosenang iba pang katulad na mga tool. Walang perpektong serbisyo, kaya ang pinakamahusay na diskarte para sa paghahanap ng tama ay ang malaman ang iyong mga kinakailangan sa provider at ang mga trade-off na handa mong gawin sa lalong madaling panahon. 
Gusto naming gawin mo ang tamang pagpili.

Data ng katatagan na kinuha mula sa serbisyo https://statusgator.com/
Data ng rating ng user na kinuha mula sa serbisyo www.capterra.com

Ang mga rehistradong user lamang ang maaaring lumahok sa survey. Mag-sign in, pakiusap

At anong serbisyo ang ginamit mo bilang backend para sa iyong aplikasyon?

  • Microsoft Azure

  • AWS Amplify (o AWS Mobile Hub)

  • Google Firebase

  • Kumulos

  • Iba pa (tukuyin sa mga komento)

16 user ang bumoto. 13 na user ang umiwas.

Pinagmulan: www.habr.com

Magdagdag ng komento