Upgrade to Pro — share decks privately, control downloads, hide ads and more …

TopMonks Caffè 5. 1. 2021 / BaaS

TopMonks Caffè 5. 1. 2021 / BaaS

Co znamená zkratka BaaS? Co vám může použití nabídnout a na co si dát pozor? A jaké jsou základní rozdíly, výhody a nevýhody platforem Firebase a Amplify?

Linky na články of fuckupech při použití firebase:

https://blog.tomilkieway.com/72k-1/
https://hackernoon.com/how-we-spent-30k-usd-in-firebase-in-less-than-72-hours-307490bd24d

Václav Slavík

January 05, 2021
Tweet

Transcript

  1. BaaS • Je cloud service model který se pod pokličkou

    stará o veškerou backend funkcionalitu a umožňuje vývojářům plně se soustředit na FE • První BaaS řešení se objevily okolo roku 2011 • Příklady: Google Firebase, AWS Amplify, Cloudboost… (Backend as a Service)
  2. • Databáze • Cloud storage • Správa uživatelů • Push

    notifikace • Remote updating • Hosting Co BaaS typicky poskytuje
  3. Výhody • Schopnost vyvinou funkční aplikaci bez potřeby velké investice

    do backend vývoje • Rychlé získání určité funkcionality • Škálovatelnost platformy / infrastruktury • Komfortní knihovna pro přenos dat mezi klientem a serverem
  4. Nevýhody • Kritické blokátory identifikované až v průběhu implementace •

    Neodhadnutí přímých nákladů na využívání BaaS • Závislost na poskytovateli BaaS (good practice je dělat abstrakci nad frameworkem aby se dal lehce nahradit) • Náročná údržba a další rozvoj projektu (limity funkcionality, migrace dat)
  5. Firebase vs. Amplify Výhody • Dedikovaná konzole • Velmi rychlé

    nabootování do platformy • Výborné zdroje pro vývojáře (videa, průvodci, dokumentace) • Instantní Real time databáze • Firestore a Firestore Rules jsou silné combo • Možnost použít GraphQL api • Možnost použít databázi dle výběru • Správa více prostředí jedné appky (dev, stage, prod) • Offline synchronizace přes device data store • Staví na existujících AWS resources (Cognito, AWS lambda) • OpenSource
  6. Firebase vs. Amplify Nevýhody • Pouze NoSQL databáze • Pozor

    na datový model a optimalizaci dotazů - mohli byste být překvapení po zaslání vyúčtování… • Dostupné UI komponenty jsou jen málo customizovatelné (z naší zkušenosti s React UI komponenty) • Občas slabá nebo neaktuální dokumentace • Ze zdrojového GraphQL schéma se generují tabulky, queries a práva která jsou použitelná do doby než chcete “něco víc”