suzuzusu日記

(´・ω・`)

Distributed Elixir

Elixirで分散ノードで処理をする方法を忘備録として書いておく.

環境

  • node01
    • 192.168.0.2
  • node02
    • 192.168.0.3

方法

node01で以下のプロセスを立ち上げる

iex --name node01@192.168.0.2 --cookie hoge

node02で以下のプロセスを立ち上げる

iex --name node02@192.168.0.3 --cookie hoge

node01のプロセスから以下を実行して接続する

iex(node02@192.168.0.2)1> Node.connect :"node02@192.168.0.3"
true
iex(node02@192.168.0.2)2> Node.list
[:"node02@192.168.0.3"]

別ノードで実行する方法

iex(node02@192.168.0.2)3> Node.spawn :"node02@192.168.0.3", fn -> IO.inspect Node.self end
:"node02@192.168.0.3"
#PID<11251.119.0>

参考