Bralci, kot ste vi, pomagajo podpirati MUO. Ko opravite nakup prek povezav na našem spletnem mestu, lahko zaslužimo partnersko provizijo. Preberi več.

Backend-as-a-Service (BaaS) se nanaša na platforme, ki programskim aplikacijam zagotavljajo zaledne storitve, kot so shranjevanje podatkov, analitika, obvestila, naročnine v realnem času in preverjanje pristnosti. Ponudniki BaaS zmanjšajo čas, potreben za razvoj aplikacije, saj odpravlja potrebo po izdelavi zaledja iz nič.

Nekateri priljubljeni ponudniki BaaS, ki podpirajo aplikacije React, so AWS Amplify, Firebase in SupaBase.

AWS Amplify

Storitve AWS je lahko težavno uporabljati brez izkušenj v oblaku. AWS Amplify, predstavljen leta 2017, je odprtokodna knjižnica, ki poenostavi vašo interakcijo s storitvami AWS in njihovo integracijo v vašo aplikacijo.

Med drugim zagotavlja storitve, kot so shranjevanje, preverjanje pristnosti, GraphQL, REST API-ji in potisna obvestila. Omogoča tudi preprost način dodajanja virov AWS, kot so Cognito, DynamoDB in ElasticSearch, v aplikacijo brez uporabe konzole AWS. Za dostop do Amplify lahko uporabite CLI ali skrbniški uporabniški vmesnik.

Ključne lastnosti AWS Amplify

  • AWS Amplify deluje z veliko ogrodji in jeziki. Za spletne aplikacije podpira priljubljena ogrodja in knjižnice JavaScript kot so React, Angular in Vue. Podpira tudi iOS in Android.
  • Amplify integrira Amazon Cognito za podporo avtentikacije e-pošte/gesla, družbene avtentikacije pri ponudnikih, kot sta Facebook in Amazon, ter večfaktorske avtentikacije.
  • Amplify vam omogoča, da svoji aplikaciji dodate API-je GraphQL in REST. Te API-je lahko uporabite za dostop do podatkov iz vira podatkov, kot je DynamoDB.
  • Amplify vam omogoča uporabo S3 za shranjevanje in upravljanje medijskih datotek v napravi in ​​v oblaku.
  • Amplify CLI vam omogoča ustvarjanje in uvajanje lambda funkcij. Lambda funkcija je a funkcija brez strežnika ki vam omogoča zagon kode brez zagotavljanja strežnika. Nekateri običajni primeri uporabe funkcij lambda vključujejo pošiljanje opozoril SMS, ko se sproži dogodek, pošiljanje e-pošte in manipulacijo s slikami, kot je ustvarjanje sličic. Za več glejte dokumente AWS pogosti primeri uporabe funkcij Lambda.
  • Začeti je poceni. Svojo aplikacijo lahko začnete ustvarjati v brezplačnem nivoju, ki ponuja večino funkcij Amplifyja. Ko se brezplačno obdobje konča, lahko plačate za določene funkcije, ki ste jih uporabljali.
  • Amplify skrajša čas do trženja programskih aplikacij, ker vam ni treba kodirati zaledja od začetka.

AWS Amplify cilja samo na AWS Cloud. Za Google Cloud razmislite o Firebase.

Firebase

Firebase je platforma BaaS, zgrajena na Google Cloudu, ki zagotavlja upravljano zaledno platformo za spletne in mobilne aplikacije. Firebase ponuja izdelke, ki razvijalcem pomagajo zgraditi zaledno infrastrukturo, izdati in spremljati aplikacijo ter sodelovati z uporabniki.

Ključne značilnosti Firebase

  • Firebase podpira integracijo z iOS, spletom in Androidom.
  • Firebase ima zbirko podatkov Cloud Firestore, ki je zbirka podatkov NoSQL, ki jo lahko uporabite za shranjevanje podatkov za svoje aplikacije. Firebase ponuja tudi bazo podatkov v realnem času, ki vam omogoča shranjevanje in sinhronizacijo podatkov med uporabniki v realnem času.
  • Firebase vam omogoča dodajanje razširitev vaši aplikaciji. Razširitve so vnaprej pripravljeni svežnji kode, ki aplikaciji dodajo več funkcionalnosti. Primer razširitve je Iskanje z Algolio, paket, ki omogoča iskanje po celotnem besedilu v zbirki podatkov Firestore v oblaku z Algolio. Druge razširitve si lahko ogledate na razširitvena tržnica.
  • Svoji aplikaciji lahko dodate funkcionalnost z integracijo Firebase z drugimi orodji, kot so Google Ads, Google Play, Jira in Slack.
  • Firebase je vgrajen v Google Cloud, kar vam omogoča enostavno prilagajanje velikosti vaše aplikacije.
  • Načrt Spark je brezplačen, kar razvijalcem pomaga pri preprostem začetku uporabe Firebase.
  • The Preverjanje pristnosti Firebase Storitev podpira avtentikacijo uporabnikov z uporabo e-pošte in gesel, telefonskih številk in ponudnikov socialne avtentikacije, kot sta Twitter in GitHub.
  • Izdelki Firebase, kot so crashlytics, spremljanje delovanja, Google Analytics in testni laboratorij, vam pomagajo spremljati delovanje vaše aplikacije.

Kot lahko vidite, ima Firebase odlične funkcije, vendar ni odprtokoden in ga je mogoče uporabljati samo v Google Cloudu. Če želite odprtokodno alternativo, poskusite Supabase.

Supabase

Supabase je platforma, ki razvijalcem omogoča hitro nastavitev ozadja za svoje aplikacije. Vsak projekt, ustvarjen na Supabase, je zbirka podatkov Postgres, ki je 100 % prenosljiva, kar poenostavlja selitev v in iz Supabase. Baza podatkov je omogočena v realnem času, lahko pa se naročite in se odzivate na posodobitve baze podatkov. Druge storitve, ki jih ponuja Supabase, so robne funkcije, preverjanje pristnosti in samodejno generirani API-ji.

Ključne značilnosti Supabase

  • Supabase ponuja popolnoma razvito zbirko podatkov Postgres. Baza podatkov je prenosljiva in ima vgrajeno avtorizacijo, ki jo lahko uporabite za nadzor uporabniškega dostopa.
  • Ponuja več načinov preverjanja pristnosti, kot so socialne prijave z Googlom, Facebookom in Twitterjem, preverjanje pristnosti e-pošte/gesla in vgrajen sistem za upravljanje uporabnikov, do katerega lahko dostopate prek API-ja.
  • Supabase podpira robne funkcije, ki so funkcije brez strežnika, ki delujejo blizu uporabnikov po vsem svetu. Z uporabo robnih funkcij zmanjšate zakasnitev in povečate hitrost izvajanja kode.
  • Podpira tudi posodobitve v realnem času, ki vam omogočajo poslušanje dogodkov v bazi podatkov Postgres.
  • Supabase in Firebase ponujata podobne storitve in glavna razlika med njima je, da je Supabase zgrajen na bazi podatkov PostgreSQL, relacijski bazi podatkov, medtem ko Firebase temelji na bazi podatkov NoSQL.
  • Cene Supabase temeljijo na količini shranjenih podatkov, zaradi česar so računi predvidljivi. Brezplačni paket vam že ponuja do 500 MB baze podatkov in 1 GB prostora za shranjevanje datotek ter je popoln za stranske projekte. Če potrebujete več prostora za shranjevanje, je naslednja cenovna stopnja 25 USD na mesec.
  • Z GraphQL lahko poizvedujete po obstoječi bazi podatkov PostgreSQL.

Katero platformo BaaS naj uporabite?

Platformo, ki jo izberete, je odvisno od potreb projekta, na katerem delate. Firebase je odličen za nerelacijske podatke, saj uporablja bazo podatkov NoSQL, medtem ko je Supabase dobra izbira, če želite uporabiti relacijsko bazo podatkov. Amplify vam omogoča, da ustvarite bazo podatkov NoSQL, ki jo podpira DynamoDB ali S3, lahko pa uporabite tudi funkcijo lambda za povezavo z relacijsko bazo podatkov.

Poleg tega, če želite uporabljati GraphQL API-je, se odločite za Amplify ali Supabase, saj Firebase tega ne podpira.

Upoštevajte tudi svojega obstoječega ponudnika v oblaku, saj boste morda lažje uporabljali platformo, zgrajeno na ponudniku, ki ga že uporabljate. Če na primer uporabljate AWS, boste morda raje uporabljali Amplify ali Firebase, če uporabljate Google Cloud. Supabase je dobra možnost, če ne želite biti vezani na določenega ponudnika oblakov.

Kako vam ponudniki BaaS pomagajo pri hitrejši dostavi

Doslej ste se seznanili s funkcijami Amplify, Firebase in Supabase ter nekaterimi dejavniki, ki jih morate upoštevati pri izbiri ponudnika BaaS. Ne glede na platformo, ki jo izberete, vam bo BaaS pomagal prihraniti čas pri razvoju. Namesto da konfigurirate bazo podatkov, zgradite sistem za preverjanje pristnosti, nastavite analitiko in druge zaledne storitve, se lahko osredotočite na dizajn in sprednji del.