如何让多台Server上的Erlang进程启动时只加载远程服务器上面的模块,在kernel的文档里面谈到了一下,同事经过试验,初步能启动进程了,这里记录一下
boot server:192.168.0.2
slave server:192.168.0.3
在boot server输入:
[quote]erl -kernel start_boot_server true boot_server_slaves '[{192,168,0,2}, {192,168,0,3}]' -name foo@192.168.0.2 -setcookie 123456[/quote]
在slave server输入:
[quote]erl -name bar@192.168.0.3 -loader inet -hosts '192.168.0.2' -id foo@192.168.0.2 -setcooke 123456[/quote]
这样节点bar@192.168.0.3加载的模块都通过网络,从192.168.0.2加载,而不是通过本地文件
boot server:192.168.0.2
slave server:192.168.0.3
在boot server输入:
[quote]erl -kernel start_boot_server true boot_server_slaves '[{192,168,0,2}, {192,168,0,3}]' -name foo@192.168.0.2 -setcookie 123456[/quote]
在slave server输入:
[quote]erl -name bar@192.168.0.3 -loader inet -hosts '192.168.0.2' -id foo@192.168.0.2 -setcooke 123456[/quote]
这样节点bar@192.168.0.3加载的模块都通过网络,从192.168.0.2加载,而不是通过本地文件
本文介绍如何配置Erlang集群,使一个节点能够从远程服务器加载所有模块,而非使用本地文件。具体步骤包括在主服务器上启动带有特定参数的Erlang shell,并在从属服务器上设置相应的加载参数。
1370





