←back to thread

570 points davidgu | 2 comments | | HN request time: 0.875s | source
Show context
sorentwo ◴[] No.44525509[source]
Postgres LISTEN/NOTIFY was a consistent pain point for Oban (background job processing framework for Elixir) for a while. The payload size limitations and connection pooler issues alone would cause subtle breakage.

It was particularly ironic because Elixir has a fantastic distribution and pubsub story thanks to distributed Erlang. That’s much more commonly used in apps now compared to 5 or so years ago when 40-50% of apps didn’t weren’t clustered. Thanks to the rise of platforms like Fly that made it easier, and the decline of Heroku that made it nearly impossible.

replies(3): >>44525640 #>>44526115 #>>44535609 #
nightpool ◴[] No.44535609[source]
What about Heroku made Erlang clustering difficult? It's had the same DNS clustering feature that Fly has, and they've had it since 2017: https://devcenter.heroku.com/articles/dyno-dns-service-disco....
replies(1): >>44535732 #
1. sorentwo ◴[] No.44535732[source]
The problem was with restrictive connections, not DNS based discovery for clustering. It wasn't possible (as far as I'm aware) to connect directly from one dyno to another through tcp/udp.
replies(1): >>44535918 #
2. nightpool ◴[] No.44535918[source]
That is not an issue when using Private Spaces, which have been available since 2015