[erlang-questions] How to expose an Erlang module to external apps?

Gleb Peregud <>
Thu Oct 18 17:29:27 CEST 2012


On Thu, Oct 18, 2012 at 5:20 PM, Yash Ganthe <> wrote:
> Hi,
>
> An Erlang module we are developing needs to be invoked from various
> applications written in different languages like .NET, Java, Perl, etc. What
> options do we have for exposing our module to teh external world? The other
> apps may possibly run on computers different than the one that runs the
> Erlang VM.

You can use multitude of options:
1. Ports
2. C-nodes
3. TCP communication
4. UDP communication
5. etc.

For TCP communication you can use multiple protocols:
1. Raw TCP sockets with length-prefixed packets
2. HTTP
3. XMPP
4. AMPQ
5. ZeroMQ
6. And many-many-many more

For TCP communication you can use different serialization options:
1. Erlang Binary Term format
2. BERT
3. MsgPack
4. Protocol Buffers
5. JSON
6. And many-many-many more

There are very many different options. Without some more details about
your needs it's hard to select one.

Best regards,
Gleb Peregud



More information about the erlang-questions mailing list