I did distributed locking with Deno, and Deno KV hosted by Deno Deploy.
Its using foundationdb, a distributed db. The deno instances running on local devices all connect to the same Deno KV to acquire the lock.
But using postgres, a select for update also works, the database is not distributed tho.