

Centrifugo: New Core Foundations
Community meetup to showcase the recent development of new core protocol features in Centrifugo.
For many years, Centrifugo has been built around three core primitives — PUB/SUB, per-channel history with automatic stream recovery and presence with join/leave events. These primitives have carried the project far. But we've always felt the protocol could express more and in very creative ways.
What if a channel didn't just pass messages through, but held state — a living key-value map that clients can read, write, and watch in real time? Ephemeral live cursors in just a few lines of code? Centrifugo already has presence, but what if we could paginate over presence and never think how to converge it to the proper state 🤔
And what if Centrifugo didn't always wait for your backend to push — what if it could pull? What if hundreds of thousands of clients needed the same data refreshed every second, and your backend only had to answer once? Being absolutely unaware of Centrifugo API. Can we have eventually consistent state without thinking about delivery to Redis and its guarantees.
We introduce two new mechanics. Two fundamentally different models of how data moves between server and client. A step towards consistent data synchronization between backend and clients. Features that, as far as we know, no other real-time messaging system offers at the protocol level.
We'll also uncover more details about the PostgreSQL integration we teased earlier this year — and how it fits into the bigger picture.
Come see what Centrifugo is becoming. Your feedback is needed.