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>