Obsah[Skrýt][Ukázat]
Backend-as-a-Service (BaaS) je paradigma služeb, ve kterém vývojáři outsourcují zákulisní komponenty webového nebo mobilního vývoje, aby se mohli soustředit na budování a údržbu frontendu na bázi plug-and-play a uniknout zátěži psaní kódu na straně serveru.
Software podporující úlohy na straně serveru, jako je ověřování, správa databáze, aktualizace v reálném čase, ukládání, hostování a upozornění push, poskytují platformy BaaS (pro mobilní aplikace).
I když různé backendové služby v zásadě poskytují stejné řešení, používají odlišné backendové technologie. To je pro mnoho vývojářů rozhodující faktor při výběru nejlepší služby pro určitý projekt.
V tomto článku se hluboce ponoříme do Supabase.
Co je to Supabase?
Supabase je open-source alternativa Firebase, která nabízí Backend jako službu pro různé aplikace. Je to opravdu jednoduché nastavení a funguje rychle s různými frameworky. Supabase se účtuje jako open-source náhrada za Firebase.
Má v úmyslu prospět vývojářům v rychlém nastavení jejich backendu. „Postavte za víkend a rozšiřte se na miliony,“ říká Supabase.
Produkty Supabase zahrnují databázi Postgres a autentizační službu, přičemž úložiště a služby bez serveru (pro backendovou logiku) stále pracují. Všechny jeho nástroje jsou většinou bezplatné a open source. Databáze Postgres obsahuje nástroje související s databází, jako je monitorování změn databáze v reálném čase a rozhraní pro správu.
Kromě toho poskytuje rychlá rozhraní API a syntaxi, které jsou srovnatelné s Firebase. To vám umožní zpracovávat úlohy CRUD konzistentním způsobem, což vám umožní soustředit se na vytváření spíše než na přepisování opakujícího se kódu CRUD.
Databáze Postgres je tabulka, která vám umožňuje ukládat organizovaná a propojená data stejným způsobem, jako byste to dělali v tabulkovém procesoru. Překvapivě, když vytváříte projekt, můžete jako databázi Postgres použít existující tabulku.
Jak Supabase funguje?
Supabase je sbírka bezplatných zdrojových technologií. Vytvářejí funkce Firebase pomocí podnikových řešení s otevřeným zdrojovým kódem. Pokud jsou nástroje a komunity dostupné pod licencí MIT, Apache 2 nebo srovnatelné otevřené licence, budou je používat a podporovat.
Pokud nástroj ještě neexistuje, vytvoří jej a zpřístupní jako open source. Supabase není mapování Firebase 1:1. Jejich cílem je poskytnout vývojářům vývojové prostředí podobné Firebase open source Technologií.
Supabase je platforma, která je hostovaná. Můžete se zaregistrovat a začít jej používat, aniž byste museli cokoliv instalovat. Můžete také hostovat a stavět na svém vlastním serveru.
- PostgreSQL má skvělou pověst pro stabilitu, robustnost funkcí a rychlost; Po více než 30 letech aktivního vývoje
- Realtime je server Elixir, který vám umožňuje poslouchat vkládání, aktualizace a mazání PostgreSQL pomocí WebSockets. Supabase naslouchá požadavkům na replikaci z Postgresu, převádí replikační byte stream na JSON a poté vysílá JSON prostřednictvím WebSockets.
- PostgREST je webový server, který převádí vaši databázi PostgreSQL na RESTful API.
- Storage poskytuje RESTful rozhraní pro správu souborů uložených v S3, s Postgres jako správce práv.
- Postgres-meta je RESTful API pro správu Postgresu, které vám mimo jiné umožňuje stahovat tabulky, přidělovat odpovědnosti a provádět dotazy.
- GoTrue je API založené na SWT, které vám umožňuje spravovat uživatele a vydávat tokeny SWT.
- Kong je brána API, která běží v cloudu.
Začínáme
1. Projekt
V Supabase je projekt kontejnerem pro všechny vaše databáze, autentizační uživatele, pravidla, tabulky a úložiště souborů.
Existuje několik míst, kde můžete svůj projekt hostovat, a správci Supabase neustále přidávají nové weby, aby snížili latenci. Vytvoření projektu trvá asi 2 minuty, takže si dejte kávu, posaďte se a relaxujte.
2. Řídicí panel projektu
Po dokončení projektu se vám zobrazí řídicí panel podobný tomu, který je zobrazen níže. Tento řídicí panel zobrazuje vše, co potřebujete vědět o svém projektu, včetně databázových připojení, požadavků na ověření, kapacity úložiště, implementace klientské knihovny a dalších.
3. Tvůrce a editor tabulek
Databáze Supabase je relační PostgreSQL se schopnostmi v reálném čase a řízením přístupu k politice pomocí Postgres RLS (Row Level Security). Vývojáři mohou použít řídicí panel Supabase k vytvoření tabulky a přidání sloupců a vlastností. Vývojáři mohou upravovat data přímo z řídicího panelu pomocí Supabase.
4. Ověřování
Google, GitHub, Facebook, Twitter, GitLab a další poskytovatelé autentizace jsou k dispozici na Supabase. Ty lze zapnout pomocí Autentizačního panelu. Podporuje také Phone OTP a Magic Link Authentication.
5. Úložný prostor
Supabase je systém úložiště objektů s otevřeným zdrojovým kódem, který zvládne jakýkoli typ souboru a má vestavěnou škálovatelnost. Má snadno použitelné rozhraní API, které umožňuje vlastní pravidla a oprávnění. Integrace CDN a také automatická transformace a optimalizace (změna velikosti a komprese vašeho materiálu) budou brzy k dispozici. Úložiště Supabase bude díky zahrnutí těchto funkcí impozantním soupeřem úložiště Firebase.
Co můžete stavět se Supabase? (Nějaké příklady)
1. Platba předplatného pomocí Supabase + Stripe + Next.js.
Kompletní startovací sada pro vysoce výkonné aplikace SaaS.
- Supabase poskytuje bezpečnou správu a ověřování uživatelů.
- Stripe Checkout a integrace zákaznického portálu Stripe.
- Supabase poskytuje výkonné nástroje pro přístup k datům a jejich správu nad PostgreSQL.
- Stripe webhooky umožňují automatickou synchronizaci cenových plánů a stavů předplatného.
2. KeepLink: Jednoduchá služba záložek se štítky a archivem
KeepLink je základní záložková služba se značkami a archivem vytvořeným pomocí Supabase a Next.js. Nemá žádné funkce pro sdílení na sociálních sítích, ale můžete hostit svou vlastní instanci.
- Označujte nové záložky automaticky na základě existujících značek.
- Nyní je možné fulltextové vyhledávání adres URL, názvů, popisů, značek a obsahu archivu díky zásobníku Supabase, značkování aliasů pro administrátorské databáze a klidný přístup k API.
- Pomocí metascraperu můžete automaticky shromažďovat názvy a popisy svých stránek. Své stránky můžete také archivovat pomocí SinglePage a Headless Chrome.
3. Chatovací aplikace v reálném čase se Supabase + React
- Pro zasílání zpráv v reálném čase se používá Supabase (nad PostgreSQL).
- Front-end používá React (CRA) + Vite
- Použitá knihovna uživatelského rozhraní je Chakra UI.
Klíčové vlastnosti
Zde jsou některé z funkcí Supabase:
- Ovládací panel/uživatelské rozhraní pro nastavení a správu databáze za méně než minutu.
- Chcete-li zaregistrovat uživatele a aktualizovat omezení přístupu ve vaší databázi, použijte ověření uživatele.
- API a knihovna JavaScriptu.
- Posluchače databáze v reálném čase.
- Funkce (tak trochu). Jedná se o procedury uložené v databázi, které mohou být napsány v SQL, JavaScript, Python nebo Java.
Klady
Supabase se odlišuje z následujících důvodů:
- Na rozdíl od Firebase můžete spouštět složité dotazy nebo textové vyhledávání.
- Supabase se postará o škálování za vás (i když používá SQL databázi)
- Migrace dat je se Supabase jednoduchá, protože využívá PostgreSQL a data můžete importovat pomocí souboru .sql.
Nevýhody
Přijetí Supabase má určité nevýhody. Jsou následující:
- Chcete-li přijímat změny v reálném čase, musíte aktivovat funkci replikace pro tabulku.
- Pokud jsou povoleny aktualizace v reálném čase, zásady zabezpečení Supabase neplatí.
- Funkce jsou omezené.
- Jeho SDK funguje pouze s JavaScriptem (podpora pro ostatní jazyky je stále ve verzi beta)
CENY
1. Volná úroveň
- Databáze s 500 MB úložného prostoru a neomezeným voláním API
- Autentizace – až 10,000 XNUMX uživatelů
- Úložiště souborů – Úložiště až 1 GB, s omezením měsíčního přenosu až 2 GB.
2. Plaťte za pochodu
- Databáze – 0.125 $ za GB úložiště, bez omezení volání API
- Auth – neomezeně
- Ukládání souborů – Uložená data 0.021 $ za GB s přenosem dat 0.07 $/GB
Pro více informací o cenách se můžete podívat na jejich webové stránky.
Proč investovat do čističky vzduchu?
Supabase je nejlepší open-source alternativa k Google Firebase. Díky výkonu PostgreSQL nabízí různé pozoruhodné funkce a nemá žádná omezení datového typu jako jiné databázové systémy v reálném čase.
Pomocí Supabase a jeho vynikajících funkcí můžete vytvářet různé aplikace. Vyzkoušejte to ještě dnes!
Marcelo
Je v případě B2B SaaS možné mít 1 hlavního uživatele na zákazníka a dalších N uživatelů souvisejících s tímto masterem, kteří se zabývají pouze daty od tohoto zákazníka?