Centrifugo - Scalable Real-Time Messaging Server
Centrifugo is an open-source, self-hosted server designed to facilitate the development of interactive real-time messaging applications. It excels in handling persistent connections over various transports like WebSocket, HTTP-streaming, SSE (Server-Sent Events), WebTransport, and GRPC, making it ideal for applications such as chats, live comments, multiplayer games, and real-time data visualizations.
Key Features
- Seamless Integration: Easily integrates with existing applications without requiring architectural changes, offering a simple publishing API.
- High Performance: Written in Go with smart optimizations, capable of handling one million WebSocket connections and 30 million messages per minute on a single modern server.
- Feature-Rich: Supports flexible authentication, various subscription types, channel history, online presence, delta updates, and more, with SDKs for web and mobile.
- Scalability: Scales across multiple nodes using efficient brokers like Redis and Nats for high connection volumes.
- Proven in Production: Trusted by companies like VK, Badoo, and Grafana, with a decade of battle-tested reliability.
- Centrifugo PRO: Offers enterprise features including analytics, real-time tracing, push notifications, and SSO integrations.
Use Cases
Centrifugo is perfect for developers building real-time applications, from collaborative tools and AI streaming responses to Slack-scale messengers and telemetry dashboards. Its language-agnostic approach ensures compatibility with any tech stack, providing a reliable PUB/SUB system for user-facing real-time updates.