Feature Request: Erlang/Elixir SDK

I think the distributed nature and networking focus of Erlang/Elixir makes it a great match for use with OpenZiti. (I tried using openziti/zitify / using LD_PRELOAD and it segfaulted the Erlang VM)

It would be especially useful for something like libcluster for clustering networked Erlang processes in different regions, and ideally supporting its multicast UDP gossip protocol (if/when OpenZiti supports multicast).

Even being able to make connections to other Ziti services (HTTP, TCP) would be great!

Hi @paulreimer. Thanks for giving zitify a try and thanks for the idea.

Erlang has FFIs and OpenZiti provides a c-sdk. I’d think you’d be able to integrate with that if you’re looking to embed OpenZiti into an Erlang app now.

Happy to have you in the community!

1 Like

Hi Clint! Thanks for the warm welcome – I think I’ve seen you on (Ziti) TV!

FFI + c-sdk is a good suggestion, I might do some experiments with that approach.

FWIW I was thinking of an SDK similar to the Python SDK (w/monkeypatch), to be able to use existing erlang/elixir libraries (or, perhaps figuring out how to get libzitify working in the Erlang VM, since I think it uses libc networking/sockets internally, but I’m not sure about that). I haven’t tried investigating why it segfaults or maybe if I can start the Erlang VM in a different / more minimal way (since I think it segfaults somewhere in VM startup before executing my code), but I think I’ll look into that a bit more, too…

2 Likes