Centrifugo is a real-time messaging server. It's language-agnostic and can be used in conjunction with application backend written in any programming language. Centrifugo runs as separate service and keeps persistent Websocket or SockJS connections from your application clients (from web browsers or other environments like iOS/Android apps). When you need to deliver event to your clients in real-time you publish it to Centrifugo API and Centrifugo then broadcasts event to all connected clients interested in this event (i.e. clients subscribed on event channel). In other words – this is a user-facing PUB/SUB server.
See server documentation.
You can also find this introduction post interesting – this is a story and motivation of Centrifugo.
Releases available as single executable files – just download latest release for your platform, unpack and run.
If you are on MacOS:
brew tap centrifugal/centrifugo brew install centrifugo
See official Docker image.
There are also packages for 64-bit Debian, Centos and Ubuntu.
Try our demo instance on Heroku (admin password is
password, secret is
secret, API key is
api_key). Or deploy your own Centrifugo instance in one click:
If you use Centrifugo and like it consider supporting project development buying its author a coffee: