Re:Lovely Week with Elixir
by dnautics on Wednesday May 20, 2020 @05:01PM
(#23251757)
You can use tricks like the global spawn option to make processes globally unique. Doesn't scale infinitely, but for a 2->low double digits HA/load balanced system it should be fine.
[ Parent
| on HN ]
Oh wow, so this will work across multiple instances of the BEAM?
If they are clustered using erlang clustering, yes. https://erlang.org/doc/man/global.html
Note that this works by taking a transaction lock on the entire cluster, so it's not recommended if you're making requests frequently. It also doesn't respect netsplits, unless you instruct in code to fail with a deficient cluster membership.