Skip to content

Vercel

Copy page

Vercel can host the HTTP surface (/sync/pull, /sync/push, /nizhal/contract) on Fluid/serverless functions with an external Postgres (Neon).

Serverless instances are ephemeral. inProcessRealtime does not fan pings across instances. Use listenNotifyRealtime with a shared Postgres so any instance’s commit NOTIFY reaches all subscribers.

WebSocket on Vercel depends on platform support and connection limits — treat WS as best-effort; pull.intervalMs on clients remains the convergence backstop.

ConcernStatus
Pull/push API on FluidViable with Neon + Hyperdrive-style pooling
Multi-instance NOTIFYRequired for cross-instance pings
Long-lived WSPlatform-constrained — verify current Vercel WS docs before betting product UX on instant push
Offline convergenceStill holds — cursor pull is authoritative

For production realtime-heavy apps, a always-on Node/Bun VM or Cloudflare DO hub is simpler than fighting serverless WS limits.

Pair with Neon — Nizhal’s no-WAL machinery runs without replication slots.