根据 rpc.erl ,它使用通用的erlang调用 gen_server 模块和 gen_server 使用 gen.erl 呼叫模块和 这里 它用 noconnect 选项作为选项 erlang:send/3 。 根据Erlang文档:
gen_server
gen.erl
noconnect
erlang:send/3
如果目标节点必须自动连接以执行发送,则返回noconnect。
另一个问题是不同的cookie。根据Erlang文档:
当节点尝试连接到另一个节点时,会比较神奇的cookie。如果它们不匹配,则连接的节点拒绝连接。
因此,如果节点之间没有任何连接,则您的调用不会创建一个,并且您无法使用不同的cookie连接Erlang节点。
在对具有不同cookie的节点执行rpc调用之前,必须执行以下函数
erlang:set_cookie(other_node@localhost, other_node_cookie).
更多信息 : http://erlang.org/doc/reference_manual/distributed.html