Enhavtabelo[Kaŝi][Montri]
Backend-as-a-Service (BaaS) estas servoparadigmo en kiu programistoj subkontraktas la malantaŭ-scenojn komponentojn de reto aŭ movebla evoluo tiel ke ili povas koncentriĝi pri konstruado kaj konservado de la fasado sur plug-and-play bazo kaj eskapi la ŝarĝon de skribado de servilflanka kodo.
Programaro subtenanta servilflankajn taskojn kiel ekzemple aŭtentigo, datumbaza administrado, realtempa ĝisdatigo, stokado, gastigado kaj puŝo-atentigoj estas disponigita per BaaS-platformoj (por moveblaj programoj).
Kvankam diversaj backendservoj esence provizas la saman solvon, ili uzas apartajn backend teknologiojn. Ĉi tio estas decida faktoro por multaj programistoj kiam elektas la plej bonan servon por certa projekto.
En ĉi tiu artikolo, ni profunde plonĝos en Supabase.
Kio estas Supabase?
Supabase estas malfermfonta Firebase-alternativo kiu ofertas Backend kiel Servo al diversaj aplikoj. Ĝi estas vere simple instali kaj funkcii rapide kun diversaj kadroj. Supabase anoncas sin kiel malfermfontan anstataŭaĵon por Firebase.
Ĝi intencas profitigi programistojn rapide agordi ilian backend. "Konstruu en semajnfino, kresku al milionoj," diras Supabase.
Supabase-produktoj inkluzivas Postgres-datumbazon kaj aŭtentikigservon, kun stokado kaj senservilaj servoj (por backend logiko) ankoraŭ en la laboroj. Ĉiuj ĝiaj iloj estas plejparte senpagaj kaj malfermfontaj. La Postgres-datumbazo inkluzivas datumbaz-rilatajn ilojn, kiel realtempa monitorado de datumbazaj modifoj kaj administrada interfaco.
Krome, ĝi disponigas rapidajn API-ojn kaj sintakson kompareblajn al Firebase. Ĉi tio permesas vin trakti CRUD-taskojn en konsekvenca maniero, permesante vin koncentriĝi pri kreado prefere ol reverkado de ripetanta CRUD-kodon.
La Postgres-datumbazo estas tabelo, kiu permesas vin konservi organizitajn kaj konektitajn datumojn same kiel vi farus en kalkultabelo. Mirinde, kiam vi kreas projekton, vi povas uzi ekzistantan kalkultabelon kiel vian Postgres-datumbazon.
Kiel funkcias Supabase?
Supabase estas kolekto de liberfontaj teknologioj. Ili kreas Firebase-funkciojn kun entreprenaj, malfermfontaj solvoj. Se la iloj kaj komunumoj disponeblas sub MIT, Apache 2 aŭ komparebla malferma permesilo, ili uzos kaj subtenos ilin.
Se la ilo ne jam ekzistas, ili kreas ĝin kaj disponigas ĝin kiel malfermfonto. Supabase ne estas 1:1 mapado de Firebase. Ilia celo estas provizi programistojn per Firebase-simila disvolva sperto uzante malferma fonto teknologioj.
Supabase estas platformo kiu estas gastigita. Vi povas registriĝi kaj ekuzi ĝin sen neceso instali ion ajn. Vi ankaŭ povas mem-gastigi kaj konstrui sur via propra servilo.
- PostgreSQL havas grandan reputacion pri stabileco, karakteriza fortikeco kaj rapideco; Post pli ol 30 jaroj da aktiva disvolviĝo,
- Realtime estas Elixir-servilo, kiu permesas vin aŭskulti PostgreSQL-enigaĵojn, ĝisdatigojn kaj forigojn per WebSockets. Supabase aŭskultas replikajn petojn de Postgres, konvertas la reproduktan bajtan fluon al JSON, kaj poste dissendas la JSON per WebSockets.
- PostgREST estas retservilo, kiu konvertas vian PostgreSQL-datumbazon en RESTful API.
- Stokado disponigas RESTplenan interfacon por administri dosierojn stokitaj en S3, kun Postgres kiel la rajtomanaĝero.
- Postgres-meta estas RESTful API por administri Postgres, kiu ebligas al vi elŝuti tabelojn, asigni respondecojn kaj fari demandojn, interalie.
- GoTrue estas SWT-bazita API, kiu permesas vin administri uzantojn kaj elsendi SWT-ĵetonojn.
- Kong estas API-enirejo, kiu funkcias en la nubo.
Komencante
1. Projekto
En Supabase, projekto estas ujo por ĉiuj viaj datumbazoj, aŭtentigaj uzantoj, reguloj, tabeloj kaj dosierstokado.
Estas pluraj lokoj de kiuj gastigi vian projekton, kaj Supabase-administrantoj konstante aldonas novajn retejojn por malpliigi latencia. Projekto daŭras ĉirkaŭ 2 minutojn por krei, do prenu kafon, sidiĝu kaj malstreĉu.
2. Projekto Panelo
Kiam via projekto estas finita, vi estos prezentita per panelo simila al tiu montrita sube. Ĉi tiu panelo montras al vi ĉion, kion vi bezonas scii pri via projekto, inkluzive de datumbazaj konektoj, aŭtentikigpetoj, stokkapablo, klientbiblioteka efektivigo kaj pli.
3. Tabelo Kreinto kaj Redaktoro
La datumbazo de Supabase estas interrilata PostgreSQL kun realtempaj kapabloj kaj politika alirkontrolo uzante Postgres RLS (Row Level Security). Programistoj povas uzi la panelon de Supabase por konstrui Tabelon kaj aldoni kolumnojn kaj ecojn. Programistoj povas modifi datumojn rekte de la panelo kun Supabase.
4. Aŭtentikigo
Google, GitHub, Facebook, Twitter, GitLab kaj pliaj Aŭtentigaj Provizantoj estas haveblaj ĉe Supabase. Ĉi tiuj povas esti ŝaltitaj per la Aŭtentiga Panelo. Ĝi ankaŭ subtenas Phone OTP kaj Magic Link Authentication.
5. Stokado
Supabase estas malfermfonta objekta stokado, kiu povas pritrakti ajnan dosierspecon kaj havas enkonstruitan skaleblon. Ĝi havas facile uzeblan API, kiu ebligas kutimajn regulojn kaj permesojn. CDN-integriĝo, same kiel aŭtomata transformo kaj optimumigo (regrandigo kaj kunpremado de via materialo), estos disponeblaj baldaŭ. Supabase-stokado estos impona rivalo al Firebase-stokado kun la inkludo de ĉi tiuj kapabloj.
Kion vi povas konstrui kun Supabase? (Kelkaj ekzemploj)
1. Pago de abono kun Supabase + Stripe + Next.js.
La kompleta komenca aro por alt-efikecaj SaaS-aplikoj.
- Supabase disponigas sekuran uzantadministradon kaj aŭtentikigon.
- Stripe Checkout kaj la Stripe-klienta portala integriĝo.
- Supabase provizas potencajn datumajn alirojn kaj administrajn ilojn aldone al PostgreSQL.
- Stripe-rethokoj ebligas aŭtomatan sinkronigon de prezplanoj kaj abonstatusoj.
2. KeepLink: Simpla legosignservo kun etikedoj kaj arkivo
KeepLink estas baza servo de legosignoj kun etikedoj kaj arkivo konstruita kun Supabase kaj Next.js. Ĝi ne havas sociajn kundividajn funkciojn, sed vi povas gastigi vian propran petskribon.
- Etikedu novajn legosignojn aŭtomate surbaze de ekzistantaj etikedoj.
- Plenteksta serĉo por URL-oj, Titoloj, Priskriboj, Etikedoj kaj Arkiva Enhavo danke al la Supabase-stako, etikedaj kaŝnomoj por administraj datumbazoj kaj trankvila API-aliro nun eblas.
- Kun metascraper, vi povas aŭtomate kolekti titolojn kaj priskribojn por viaj paĝoj. Vi ankaŭ povas arkivi viajn paĝojn per SinglePage kaj Headless Chrome.
3. Realtempa babilejo kun Supabase + React
- Por realtempa mesaĝado, Supabase (aldone al PostgreSQL) estas uzata.
- Frontend uzas React (CRA) + Vite
- La UI-biblioteko uzata estas Chakra UI.
Ŝlosilo Elstaraĵoj
Jen kelkaj el la trajtoj de Supabase:
- Instrumentpanelo/uzantinterfaco por agordi kaj administri vian datumbazon en malpli ol minuto.
- Por registri uzantojn kaj ĝisdatigi alirlimigojn en via datumbazo, apliku uzantan aŭtentigon.
- APIoj kaj JavaScript-biblioteko.
- Datumbazaj aŭskultantoj en reala tempo.
- La Funkcioj (iaj). Ĉi tiuj estas datumbazaj stokitaj proceduroj, kiuj povas esti skribitaj en SQL, JavaScript, Python aŭ Java.
avantaĝoj
Supabase distingas sin pro la sekvaj kialoj:
- Kontraste al Firebase, vi povas fari komplikajn demandojn aŭ tekstoserĉojn.
- Supabase zorgas pri la skalo por vi (kvankam ĝi uzas SQL-datumbazon)
- Datummigrado estas simpla kun Supabase ĉar ĝi utiligas PostgreSQL, kaj vi povas importi datumojn uzante a.sql-dosieron.
contras
Estas iuj malavantaĝoj adopti Supabase. Ili estas kiel sekvas:
- Por ricevi realtempajn ŝanĝojn, vi devas aktivigi la reproduktan funkcion por tabelo.
- Kiam realtempaj ĝisdatigoj estas ebligitaj, la sekurecaj politikoj de Supabase ne validas.
- Trajtoj estas limigitaj.
- Ĝia SDK funkcias nur kun JavaScript (Subteno por aliaj lingvoj ankoraŭ estas en beta)
prezoj
1. Senpaga Nivelo
- Datumbazo kun 500 MB da stokado kaj senlimaj API-vokoj
- Aŭtentikigo - Ĝis 10,000 Uzantoj
- Dosiera Stokado - Ĝis 1 GB da stokado, kun monataj translokigaj limigoj de ĝis 2 GB.
2. Pagu kiel vi iras
- Datumbazo - $ 0.125 per GB da stokado, sen limoj pri API-vokoj
- Aŭto - Senlima
- Dosiera Stokado - Datumoj stokitaj 0.021 USD per GB kun Transdono de datumoj de 0.07 USD/GB
Por pliaj informoj pri prezoj, vi povas kontroli ilian retejon.
konkludo
Supabase estas la plej bona malfermfonta alternativo al Firebase de Google. Pro la potenco de PostgreSQL, ĝi ofertas diversajn rimarkindajn funkciojn kaj ne havas ajnajn datumtipajn limigojn kiel aliaj realtempaj datumbazaj sistemoj.
Vi povas krei diversajn apojn uzante Supabase kaj ĝiajn bonegajn funkciojn. Provu ĝin hodiaŭ!
Marcelo
En la kazo de B2B SaaS, ĉu eblas havi 1 majstran uzanton per kliento kaj aliajn N uzantojn rilatajn al ĉi tiu majstro traktanta nur datumojn de ĉi tiu kliento?