Lesere som deg er med på å støtte MUO. Når du foretar et kjøp ved å bruke lenker på nettstedet vårt, kan vi tjene en tilknyttet provisjon. Les mer.

Backend-as-a-Service (BaaS) refererer til plattformer som tilbyr backend-tjenester, som datalagring, analyser, varsler, sanntidsabonnement og autentisering, til programvareapplikasjoner. BaaS-leverandører reduserer tiden som trengs for å utvikle en applikasjon, da det eliminerer behovet for å bygge backend fra bunnen av.

Noen populære BaaS-leverandører som støtter React-applikasjoner er AWS Amplify, Firebase og SupaBase.

AWS Amplify

AWS-tjenester kan være vanskelige å bruke uten skyopplevelse. AWS Amplify ble lansert i 2017 og er et åpen kildekode-bibliotek som forenkler hvordan du samhandler med og integrerer AWS-tjenester i appen din.

Den tilbyr tjenester som lagring, autentisering, GraphQL, REST APIer og push-varsler, blant andre. Det gir også en enkel måte å legge til AWS-ressurser som Cognito, DynamoDB og ElasticSearch til en app uten å bruke AWS-konsollen. Du kan bruke CLI eller Admin UI for å få tilgang til Amplify.

Nøkkelfunksjoner til AWS Amplify

  • AWS Amplify jobber med mange rammer og språk. For webapplikasjoner støtter den populære JavaScript-rammeverk og biblioteker som React, Angular og Vue. Den støtter også iOS og Android.
  • Amplify integrerer Amazon Cognito for å støtte e-post-/passordautentisering, sosial autentisering med leverandører som Facebook og Amazon, og multifaktorautentisering.
  • Amplify lar deg legge til GraphQL og REST APIer i applikasjonen din. Du kan bruke disse API-ene for å få tilgang til data fra en datakilde som DynamoDB.
  • Amplify lar deg bruke S3 til å lagre og administrere mediefiler på enheten og i skyen.
  • Amplify CLI lar deg opprette og distribuere lambda-funksjoner. En lambda-funksjon er en serverløs funksjon som lar deg kjøre kode uten å klargjøre en server. Noen vanlige brukstilfeller for lambda-funksjoner inkluderer sending av SMS-varsler når en hendelse utløses, sending av e-poster og bildemanipulering som å lage miniatyrbilder. Se AWS-dokumentene for mer vanlig bruk av Lambda-funksjoner.
  • Det er billig å komme i gang. Du kan begynne å lage applikasjonen din i gratisnivået som tilbyr de fleste av Amplifys funksjoner. Når gratisperioden er over, kan du betale for de spesifikke funksjonene du brukte.
  • Amplify reduserer tiden-til-markedet for programvareapplikasjoner fordi du ikke trenger å kode backend fra bunnen av.

AWS Amplify retter seg kun mot AWS Cloud. For Google Cloud bør du vurdere Firebase.

Firebase

Firebase er en BaaS-plattform bygget på Google Cloud som gir en administrert backend-plattform for nett- og mobilapplikasjoner. Firebase tilbyr produkter som hjelper utviklere med å bygge backend-infrastrukturen, frigi og overvåke applikasjonen og engasjere seg med brukere.

Nøkkelfunksjoner i Firebase

  • Firebase støtter integrasjon med iOS, web og Android.
  • Firebase har en Cloud Firestore-database som er en NoSQL-database du kan bruke til å lagre data for appene dine. Firebase tilbyr også en sanntidsdatabase som lar deg lagre og synkronisere data mellom brukere i sanntid.
  • Firebase lar deg legge til utvidelser til appen din. Utvidelser er ferdigpakkede pakker med kode som legger til mer funksjonalitet til en app. Et eksempel på en utvidelse er Search with Algolia, en pakke som muliggjør fulltekstsøk i skyen Firestore-databasen ved hjelp av Algolia. Du kan se andre utvidelser på utvidelsesmarkedsplass.
  • Du kan legge til funksjonalitet i appen din ved å integrere Firebase med andre verktøy som Google Ads, Google Play, Jira og Slack.
  • Firebase er bygget i Google Cloud, slik at du enkelt kan skalere appen din.
  • Spark-planen er gratis, noe som hjelper utviklere med å komme i gang med Firebase enkelt.
  • De Firebase-autentisering tjenesten støtter brukerautentisering ved hjelp av e-post og passord, telefonnumre og sosiale autentiseringsleverandører som Twitter og GitHub.
  • Firebase-produkter som crashlytics, ytelsesovervåking, Google Analytics og testlab hjelper deg med å holde oversikt over appens ytelse.

Som du kan se, har Firebase flotte funksjoner, men det er ikke åpen kildekode og kan bare brukes på Google Cloud. Hvis du vil ha et åpen kildekode-alternativ, prøv Supabase.

Supabase

Supabase er en plattform som gjør det mulig for utviklere å sette opp en backend for applikasjonene sine raskt. Hvert prosjekt opprettet på Supabase er en Postgres-database som er 100 % bærbar, noe som forenkler migrering til og fra Supabase. Databasen er sanntidsaktivert, og du kan abonnere og reagere på databaseoppdateringer. Andre tjenester levert av Supabase er kantfunksjoner, autentisering og automatisk genererte APIer.

Nøkkelfunksjoner til Supabase

  • Supabase tilbyr en fullverdig Postgres-database. Databasen er bærbar og har innebygd autentisering du kan bruke til å kontrollere brukertilgang.
  • Den tilbyr flere autentiseringsmetoder som sosiale pålogginger med Google, Facebook og Twitter, e-post-/passordautentisering og et innebygd brukeradministrasjonssystem du kan få tilgang til via en API.
  • Supabase støtter kantfunksjoner som er serverløse funksjoner som kjører nær brukere over hele verden. Ved å bruke edge-funksjoner reduserer du latens og øker kodeutførelseshastigheter.
  • Den støtter også sanntidsoppdateringer som lar deg lytte til hendelser i Postgres-databasen.
  • Supabase og Firebase tilbyr lignende tjenester, og hovedforskjellen mellom dem er Supabase er bygget på en PostgreSQL-database, en relasjonsdatabase mens Firebase er basert på en NoSQL-database.
  • Supabase-priser er basert på mengden data som er lagret, noe som gjør regninger forutsigbare. Gratispakken gir deg allerede opptil 500 MB database og 1 GB fillagring og er perfekt for sideprosjekter. Hvis du trenger mer lagringsplass, er neste prisnivå $25 per måned.
  • Du kan spørre en eksisterende PostgreSQL-database ved å bruke GraphQL.

Hvilken BaaS-plattform bør du bruke?

Plattformen du velger avhenger av behovene til prosjektet du jobber med. Firebase er flott for ikke-relasjonelle data siden den bruker en NoSQL-database mens Supabase er et godt valg hvis du vil bruke en relasjonsdatabase. Amplify, lar deg lage en NoSQL-database støttet av DynamoDB eller S3, men du kan også bruke en lambda-funksjon for å koble til en relasjonsdatabase.

I tillegg, hvis du vil bruke GraphQL API-er, velg Amplify eller Supabase siden Firebase ikke støtter det.

Du bør også vurdere din eksisterende nettskyleverandør, da du kan finne det lettere å bruke en plattform bygget på leverandøren du allerede bruker. For eksempel, hvis du bruker AWS, kan du foretrekke Amplify eller Firebase hvis du bruker Google Cloud. Supabase er et godt alternativ hvis du helst ikke vil være knyttet til en spesifikk skyleverandør.

Hvordan BaaS-leverandører hjelper deg å sende raskere

Så langt har du lært om funksjonene til Amplify, Firebase og Supabase og noen av faktorene du bør vurdere når du velger en BaaS-leverandør. Uansett hvilken plattform du velger, vil BaaS hjelpe deg med å spare utviklingstid. I stedet for å konfigurere databasen, bygge et autentiseringssystem, sette opp analyser og andre backend-tjenester, kan du fokusere på designet og frontend.