3 ms·
I’m working on making Postgres a real-time database (like Firebase): https://github.com/supabase/realtime https://github.com/supabase/realtime At its core it’s
by kiwicopple 7y ago
I’m working on making Postgres a real-time database (like Firebase): https://github.com/supabase/realtime https://github.com/supabase/realtime
At its core it’s an elixir server which listens to Postgres’s built-in replication functionality, converts the byte stream to JSON, then blasts it out over websockets.
It’s working in production at a few companies now. My next goal is to build connectors to other systems like Kafka, SQS etc
- anarazel 7y agoFWIW, the README.md says "the Phoenix server listens to PostgreSQL's replication functionality (streaming WAL)" - that makes it sound like you're actually parsing the WAL itself. But you seem to be looking at the already decoded data (using postgres' logical decoding). That's the right thing to do, please don't get me wrong. Just suggesting to clarify.
- kiwicopple 7y agoThat’s right it is using logical decoding. Thanks for the tip - I’ll update the readme so it’s more exact