【发布时间】:2016-06-16 05:32:47
【问题描述】:
我正在尝试在 Erlang 中使用分布式编程。
但是我有一个问题,我无法让两个 Erlang 的节点通信。
我尝试将相同的原子放入“Magical cookies”中,但没有成功。
我尝试使用命令 net:ping(node),但响应很糟糕(没有重新配置另一个节点),或者使用了 nodes(),以查看我的第一个节点是否看到第二个节点,但它没有再次工作。
第一个和第二个节点是VMWare中的CentOS,在网络适配器中使用桥接。
我在虚拟机之间的 Erlang 之外输入了命令 ping,它们重新配置了每个虚拟机。
我启动第一个节点,但是第二个节点打开进程,却找不到节点pong。
(pong@localhost)8> tut17:start_pong().
true
(ping@localhost)5> c(tut17).
{ok,tut17}
(ping@localhost)6> tut17:start_ping(pong@localhost).
<0.55.0>
谢谢!
【问题讨论】:
-
您将需要提供一些代码和上下文以获取帮助。
-
您是否检查过防火墙配置和路由器(如果有)?
-
你能从两个节点发布
epdm -names吗? -
主机 1
epmd: up and running on port 4369 with data: name ping at port 33880主机 2epmd: up and running on port 4369 with data: name pong at port 59495 -
node().从两个节点上的 Erlang shell 返回什么?
标签: erlang distributed-computing