
適用於 Postgres 的即時同步。
Zeabur
Zeabur
Zeabur
同步是打造快速、現代化軟體的魔法要素。從 Figma、Linear 這類應用,到使用即時本機資料運作的 AI 代理。
Electric 是一個 Postgres 同步引擎。它替你解決同步的棘手問題,包括部分複寫、扇出(fan-out)以及資料分發與交付。讓你不必自建同步系統,也能打造出色的軟體。
更具體地說,Electric 是面向 Postgres 的讀取路徑(read-path)同步引擎。它會把資料從 Postgres 同步到……任何你想要的地方。核心同步協定基於底層的 HTTP API,並可與 CDN 整合,以達到高度可擴展的資料交付。
部分複寫透過 Shapes 來管理。同步資料可以直接使用,也可以透過客戶端函式庫與框架整合來使用。
你需要先讓一個 PostgreSQL 執行中。在這裡部署一個。
你也需要在 postgresql.conf 檔案中加入 wal_level = 'logical'。你可以在 PostgreSQL 的 Config Editor 頁面 找到這個設定。
一旦你有了 PostgreSQL 實例,就可以點擊「Deploy」按鈕來部署 Electric。這個一鍵部署模板會自動關聯到你專案中的第一個 PostgreSQL 實例。
請注意:此 API 透過 API token 進行保護。你可以在 electric 服務的「Instructions」區段找到預設 token。也歡迎將 PASSWORD 環境變數改成自訂值,以輪替你的 token。
我們也在 Electric 服務上設置了快取代理。建議使用我們的代理來存取 Electric 服務,也就是你在部署服務時綁定的網域。你可以在 electricproxy 服務的「Instructions」區段找到代理網域。
在正式環境中,你可能還需要設定 驗證代理,以避免未授權存取。你可以使用 Next.js 或 TanStack Start 提供的 BFF(例如 API routes)來代理。
部署 Electric 服務後,你可以使用下列 API 請求一個 Shape,其中包含 scores 資料表的所有列:
curl https://your-domain.zeabur.app/v1/shape?table=scores&offset=-1&secret=SECRET_FROM_INSTRUCTIONS
DATABASE_URL: PostgreSQL 實例的 URL。若你同時執行多個 PostgreSQL 實例,這會很有用。PASSWORD: Electric 服務的 API token。你也可以在 electric 服務的「Instructions」區段找到它。