如何从Python调用Erlang?

7 投票
3 回答
2688 浏览
提问于 2025-04-16 08:26

可能重复的问题:
如何将Erlang和Python结合起来的最佳方法

为了使用Erlang的一些强大功能,我想从Python中调用Erlang程序,我该怎么做呢?谢谢~

3 个回答

1

我们通常使用JSON通过HTTP来完成这个任务。在某些情况下,你可能会想用更强大的消息传递协议,比如用RabbitMQ的AMQP,但一般来说,Python直接使用Erlang的分布式协议的理由不多。有时候,当性能比较重要时,我们会用erlport来序列化数据,而不是用JSON。

3

你可以看看 BERT-RPC。这个工具让你可以进行 远程过程调用,也就是在不同的地方请求执行某些操作,还可以请求数据(包括流式数据)。在这里,你会找到一些编程语言的库,包括Python。

在你的情况下,你可以使用 ernie 来搭建一个Erlang服务器,然后通过 python-bertrpc 客户端与它进行通信。这两个项目都有详细的文档。

8

在Erlang中,你可以通过“端口”来和外部世界进行交流,这种方式提供了一种以字节为基础的接口,方便你和外部程序进行互动。

你还可以看看erlport,这是一个用Python写的库,它实现了Erlang的端口协议。

撰写回答