後端即服務 (BaaS) 是一種服務範式,其中開發人員將 Web 或移動開發的幕後組件外包,以便他們可以專注於在即插即用的基礎上構建和維護前端,並且擺脫編寫服務器端代碼的負擔。
BaaS 平台(用於移動應用程序)提供支持服務器端任務的軟件,例如身份驗證、數據庫管理、實時更新、存儲、託管和推送警報。
儘管各種後端服務從根本上提供相同的解決方案,但它們使用不同的後端技術。 這是許多開發人員在為某個項目選擇最佳服務時的決定性因素。
在本文中,我們將深入探討 Supabase。
什麼是 超級基地?
超級基地 是一種開源 Firebase 替代方案,可為各種應用程序提供後端即服務。 使用各種框架快速設置和操作非常簡單。 Supabase 自稱是 Firebase 的開源替代品。
它旨在幫助開發人員快速設置後端。 “在一個週末建造,增長到數百萬,”Supabase 說。
Supbase 產品包括 Postgres 數據庫和身份驗證服務,存儲和無服務器服務(用於後端邏輯)仍在開發中。 它的所有工具大多是免費和開源的。 Postgres 數據庫包括與數據庫相關的工具,例如對數據庫修改的實時監控和一個管理界面。
此外,它還提供了可與 Firebase 相媲美的快速 API 和語法。 這允許您以一致的方式處理 CRUD 任務,使您可以專注於創建而不是重寫重複的 CRUD 代碼。
Postgres 數據庫是一個表格,它允許您以與電子表格相同的方式存儲組織和連接的數據。 令人驚訝的是,當您創建項目時,您可能會使用現有的電子表格作為 Postgres 數據庫。
Supabase 是如何工作的?
Supabase 是免費源技術的集合。 他們正在使用企業級開源解決方案創建 Firebase 功能。 如果這些工具和社區在 MIT、Apache 2 或類似的開放許可下可用,他們將使用和支持它們。
如果該工具尚不存在,他們將創建它並使其可用 開放源碼. Supabase 不是 Firebase 的 1:1 映射。 他們的目標是為開發人員提供類似 Firebase 的開發體驗,使用 開源 技術。
Supabase 是一個託管平台。 您可以註冊並開始使用它而無需安裝任何東西。 您也可以自行託管並在您自己的服務器上構建。
- PostgreSQL 在穩定性、功能健壯性和速度方面享有盛譽; 經過30多年的積極發展,
- Realtime 是一個 Elixir 服務器,它允許您使用 WebSockets 監聽 PostgreSQL 的插入、更新和刪除。 Supbase 監聽來自 Postgres 的複制請求,將復製字節流轉換為 JSON,然後通過 WebSockets 廣播 JSON。
- PostgREST 是一個 Web 服務器,可將您的 PostgreSQL 數據庫轉換為 RESTful API。
- Storage 提供了一個 RESTful 接口來管理存儲在 S3 中的文件,使用 Postgres 作為權限管理器。
- Postgres-meta 是一個用於管理 Postgres 的 RESTful API,它允許您下載表、分配職責和進行查詢等。
- GoTrue 是一個基於 SWT 的 API,允許您管理用戶和頒發 SWT 令牌。
- Kong 是一個運行在雲端的 API 網關。
入門
1.項目
在 Supbase 中,項目是所有數據庫、身份驗證用戶、規則、表和文件存儲的容器。
有幾個地方可以託管您的項目,Supabase 管理員不斷添加新站點以減少延遲。 創建一個項目大約需要 2 分鐘,所以喝杯咖啡,坐下來放鬆一下。
2. 項目儀表板
當您的項目完成後,您將看到一個類似於下圖的儀表板。 此儀表板向您展示了您需要了解的有關項目的所有信息,包括數據庫連接、身份驗證請求、存儲容量、客戶端庫實現等。
3.表格創建者和編輯器
Supbase 的數據庫是一個關係型 PostgreSQL,具有實時功能和使用 Postgres RLS(行級安全性)的策略訪問控制。 開發人員可以使用 Supabase 的儀表板來構建一個 Table 並添加列和屬性。 開發人員可以使用 Supabase 直接從儀表板修改數據。
4.認證
Supbase 上提供了 Google、GitHub、Facebook、Twitter、GitLab 和更多身份驗證提供程序。 這些可以使用身份驗證面板打開。 它還支持電話 OTP 和 Magic Link 身份驗證。
5。 存儲
Supabase 是一個開源對象存儲系統,可以處理任何文件類型並具有內置的可擴展性。 它有一個易於使用的 API,支持自定義規則和權限。 CDN 集成以及自動轉換和優化(調整和壓縮您的材料)將很快推出。 包含這些功能的 Supabase 存儲將成為 Firebase 存儲的強大競爭對手。
你可以用 Supabase 構建什麼? (一些例子)
1. 訂閱付款 使用 Supbase + Stripe + Next.js。
高性能 SaaS 應用程序的完整入門套件。
- Supbase 提供安全的用戶管理和身份驗證。
- Stripe Checkout 和 Stripe 客戶門戶集成。
- Supbase 在 PostgreSQL 之上提供了強大的數據訪問和管理工具。
- Stripe webhook 可以自動同步價格計劃和訂閱狀態。
2. 保持鏈接:帶有標籤和存檔的簡單書籤服務
KeepLink 是一個基本的書籤服務,帶有標籤和使用 Supbase 和 Next.js 構建的存檔。 它沒有任何社交分享功能,但您可以託管自己的實例。
- 根據現有標籤自動標記新書籤。
- 借助 Supabase 堆棧,可以對 URL、標題、描述、標籤和存檔內容進行全文搜索、管理數據庫的標記別名和 restful API 訪問。
- 使用 metascraper,您可以自動收集頁面的標題和描述。 您還可以使用 SinglePage 和 Headless Chrome 歸檔您的頁面。
3. 實時聊天應用 使用 Supabase + React
- 對於實時消息傳遞,使用 Supabase(在 PostgreSQL 之上)。
- 前端使用 React (CRA) + Vite
- 使用的 UI 庫是 Chakra UI。
主要功能
以下是 Supabase 的一些功能:
- 用於在不到一分鐘的時間內設置和管理數據庫的儀表板/用戶界面。
- 要註冊用戶並更新數據庫中的訪問限制,請應用用戶身份驗證。
- API 和 JavaScript 庫。
- 實時數據庫監聽器。
- 函數(有點)。 這些是可以用 SQL、JavaScript、Python 或 Java 編寫的數據庫存儲過程。
優點
Supabase 與眾不同的原因如下:
- 與 Firebase 相比,您可能會運行複雜的查詢或文本搜索。
- Supabase 為您處理擴展(即使它使用 SQL 數據庫)
- 使用 Supbase 進行數據遷移很簡單,因為它利用了 PostgreSQL,您可以使用 .sql 文件導入數據。
缺點
採用 Supabase 有一些缺點。 它們如下:
- 要接收實時更改,您必須激活表的複制功能。
- 啟用實時更新後,Supabase 的安全策略不適用。
- 功能有限。
- 它的 SDK 僅適用於 JavaScript(對其他語言的支持仍處於測試階段)
方案收費
1. 免費套餐
- 具有 500 MB 存儲空間和無限 API 調用的數據庫
- 身份驗證 – 最多 10,000 個用戶
- 文件存儲 – 高達 1 GB 的存儲空間,每月傳輸限制高達 2 GB。
2. 隨用隨付
- 數據庫 – 每 GB 存儲 0.125 美元,對 API 調用沒有限制
- 身份驗證 - 無限制
- 文件存儲 – 數據存儲每 GB 0.021 美元,數據傳輸 0.07 美元/GB
有關更多定價信息,您可以查看他們的網站.
結論
Supabase 是最好的開源 谷歌 Firebase 的替代品. 由於PostgreSQL的強大,它提供了各種顯著的特性,並且沒有像其他實時數據庫系統那樣的任何數據類型限制。
您可以使用 Supabase 及其出色的功能創建各種應用程序。 今天試一試!
馬*
對於 B2B SaaS,是否可以為每個客戶設定 1 個主用戶,而與該主用戶相關的其他 N 個用戶僅處理來自該客戶的資料?