Elixir连接同一台机器上的节点

示例

在两个终端窗口中启动两个命名节点:

>iex --name bob@127.0.0.1
iex(bob@127.0.0.1)>
>iex --name frank@127.0.0.1
iex(frank@127.0.0.1)>

通过指示一个节点连接来连接两个节点:

iex(bob@127.0.0.1)>Node.connect:"frank@127.0.0.1"
true

现在,两个节点已连接并且彼此了解:

iex(bob@127.0.0.1)> Node.list
[:"frank@127.0.0.1"]
iex(frank@127.0.0.1)> Node.list
[:"bob@127.0.0.1"]

您可以在其他节点上执行代码:

iex(bob@127.0.0.1)> greet = fn() -> IO.puts("Hello from #{inspect(Node.self)}") end
iex(bob@127.0.0.1)> Node.spawn(:"frank@127.0.0.1", greet)
#PID<9007.74.0>
Hello from :"frank@127.0.0.1"
:ok