
Postgres のリアルタイム同期。
Zeabur
Zeabur
Zeabur
同期は、高速でモダンなソフトウェアを支える魔法の材料です。Figma や Linear のようなアプリから、ライブなローカルデータで動く AI エージェントまで。
Electric は Postgres 向けの同期エンジンです。部分レプリケーション、ファンアウト、データ配信など、同期の難しい問題をまとめて解決します。自前で同期基盤を作り込まずに、最高のソフトウェアを作れます。
具体的には、Electric は Postgres の read-path(読み取り経路)同期エンジンです。Postgres から...好きなところへデータを同期できます。コアとなる同期プロトコルは低レベルな HTTP API に基づいており、CDN と統合して高いスケーラビリティでデータ配信できます。
部分レプリケーションは Shapes で管理します。同期はそのまま直接利用することも、クライアントライブラリやフレームワーク統合経由で利用することもできます。
PostgreSQL インスタンスを起動しておく必要があります。こちらからデプロイできます。
さらに、postgresql.conf に wal_level = 'logical' を追加してください。PostgreSQL の Config Editor ページ で設定できます。
PostgreSQL インスタンスの準備ができたら、「Deploy」ボタンをクリックして Electric をデプロイできます。このワンクリックデプロイ用テンプレートは、プロジェクト内の最初の PostgreSQL インスタンスに自動的に紐づきます。
この API は API トークン で保護されています。デフォルトのトークンは electric サービスの「Instructions」セクションで確認できます。トークンをローテーションしたい場合は、PASSWORD 環境変数を任意の値に変更してください。
Electric サービスにはキャッシュプロキシも設定済みです。Electric サービスへアクセスする際は、このプロキシ(サービスをデプロイした際にバインドしたドメイン)を使うことを推奨します。プロキシのドメインは electricproxy サービスの「Instructions」セクションで確認できます。
本番環境では、不正アクセスを防ぐために 認証プロキシ の設定が必要になる場合もあります。Next.js や TanStack Start が提供する BFF(例: API routes)を使ってプロキシできます。
Electric サービスをデプロイしたら、次の API を使って scores テーブルの全行を含む Shape をリクエストできます。
curl https://your-domain.zeabur.app/v1/shape?table=scores&offset=-1&secret=SECRET_FROM_INSTRUCTIONS
DATABASE_URL: PostgreSQL インスタンスの URL。複数の PostgreSQL インスタンスを動かしている場合に便利です。PASSWORD: Electric サービスの API トークン。electric サービスの「Instructions」セクションでも確認できます。