It's super handy. There's no security barrier between nodes. It's a headache if your network is unreliable.
For a chat app, messaging someone becomes a series of steps:
a) look up if they're online (send a message to the presence database service)
b) if you got a process id back, that's the process connected to the user, so send it the message. The process could be on the same machine or not, but the sending api is the same. This is the special part: few other environments make arbitrary messaging between processes/threads/tasks/whathaveyou so pervasive.
c) if you don't get a process id back, the user is offline; send the message to the offline database.
My usecase is less independent though, that control plane is orchestrating like Lambda/fly.io style workloads on top of firecracker: https://jomcgi.dev/ember
I was involved, years ago, in using Erlang on these devices: https://www.icare-world.com/us/product/icare-eidon/
It was a lot of fun and there were some very interesting challenges for everyone involved.