Centrifugo
Scalable real-time messaging server for interactive applications, designed for high performance and easy integration.
Centrifugo is a self-hosted, language-agnostic real-time messaging server built in Go, designed to handle persistent connections over various transports like WebSocket, HTTP-streaming, SSE, WebTransport, and GRPC. It provides a simple publishing API, allowing applications to introduce real-time updates without altering their existing architecture. Centrifugo excels at broadcasting messages to many subscribers simultaneously, making it ideal for applications requiring instant updates to large audiences, such as chat apps, live comments, multiplayer games, real-time data visualizations, collaborative tools, and AI streaming responses.
The server offers robust features including flexible authentication, various subscription types, channel history, online presence, delta updates, and the ability to proxy connection events to a backend. It supports out-of-the-box scalability through integrations with efficient brokers like Redis (and compatible storages) and Nats. Centrifugo is battle-tested, having been used in production for a decade by numerous companies. A PRO version is also available, offering advanced features like analytics with ClickHouse, real-time tracing, performance optimizations, push notification API, and SSO integrations for corporate and enterprise environments.
Centrifugo is for developers and organizations looking to build highly interactive and real-time applications that require efficient, scalable, and reliable message delivery to a large number of connected users. Its focus on performance, scalability, and ease of integration makes it suitable for a wide range of use cases from small projects to enterprise-level deployments.