Real-time WebSocket messaging for your apps
Deploy managed Centrifugo instances with one click. Channels, presence, message history, and a publish API -- everything you need for real-time features.
Connect and subscribe in a few lines
Built for real-time at scale
Centrifugo handles the hard parts of real-time messaging so you can focus on your features.
WebSocket + SSE
Bidirectional WebSocket connections for real-time updates. Server-Sent Events fallback for environments where WebSocket is restricted.
Channels with Presence
Organize messages into channels. Track which users are online in each channel with built-in presence. Perfect for chat, collaboration, and live dashboards.
Publish API
Push messages from your backend to any channel via a simple HTTP API. No WebSocket connection needed from your server -- just POST to the publish endpoint.
Admin Dashboard
Built-in Centrifugo admin dashboard for monitoring connections, channels, and message throughput in real time.
Message History
Centrifugo stores message history per channel. Clients that reconnect automatically recover missed messages without custom logic.
Lightweight & Fast
Centrifugo is a single Go binary using approximately 128 MB of memory. Handles hundreds of thousands of concurrent connections per node.
How It Works
Create Realtime Instance
Click "Create Realtime Server" in the sh0 dashboard. Choose a name and configure your instance.
Configure Channels
Set up channel namespaces, permissions, history retention, and presence tracking from the admin panel.
Connect Your Frontend
Install the Centrifugo JavaScript client. Connect to your instance and subscribe to channels.
Publish Messages
Send messages from your backend via the HTTP publish API. All connected clients receive them instantly.
Message Flow
Publish via HTTP from any backend. Centrifugo fans out to all connected clients instantly.
DIY WebSocket
- x Build connection management from scratch
- x Implement reconnection and message recovery
- x Handle presence tracking manually
- x Scale WebSocket servers horizontally
- x Deal with proxy and firewall issues
- x No admin dashboard or monitoring
sh0 + Centrifugo
- Managed connections with auto-reconnect
- Automatic message recovery on reconnect
- Built-in presence per channel
- Handles millions of connections per node
- Auto-SSL, works through any proxy
- Real-time admin dashboard included
Frequently Asked Questions
What is Centrifugo? +
How many concurrent connections can it handle? +
Can I use it with any backend language? +
Does it work with PostgREST and Auth? +
What about message persistence? +
Can I use Server-Sent Events instead of WebSocket? +
Add real-time to your app today
Deploy Centrifugo with one click. WebSocket messaging without the infrastructure headache.