Centrifugo
- 2 min read

Centrifugo

On this page
Introduction

Centrifugo is a robust and scalable real-time messaging server that operates independently of your application's programming language. As a separate service, it maintains persistent connections from application clients using various types of transport such as WebSocket, SockJS, EventSource, GRPC, and HTTP-streaming. The essence of Centrifugo is its ability to act as an accessible PUB/SUB server for user-facing applications.

Centrifugo – scalable real-time messaging server in a language-agnostic way. Set up once and forever. | Centrifugo
Centrifugo is an open source server designed to help building interactive real-time messaging applications. Think chats, live comments, multiplayer games, streaming metrics etc. Centrifugo provides a variety of real-time transports, scales well and integrates with any application.

Features

One of Centrifugo's key offerings is its seamless integration capability. As a self-hosted service, Centrifugo can manage connections over multiple real-time transports while providing a straightforward publish API. It meshes seamlessly with any application without the need to modify the existing application architecture. With Centrifugo taking care of the persistent connections, introducing real-time features to your applications becomes hassle-free.

In terms of performance, Centrifugo raises the bar high. Developed in Go language and powered by smart optimizations, its performance metrics are truly remarkable. A standard test with 1 million WebSocket connections demonstrated that up to approximately 30 million messages per minute (or 500k messages per second) could be delivered to connected clients with a latency not exceeding 200ms in the 99th percentile.


With 7252 GitHub stars and the latest commit on 2023-07-28 the project looks healthy.