erlang分布式编程
Posted
技术标签:
【中文标题】erlang分布式编程【英文标题】:erlang distributed programming 【发布时间】:2013-02-26 15:39:25 【问题描述】:我有一个具有以下要求的应用程序。
在我的 Erlang App 运行期间。在运行中,我需要在本地主机或远程主机上启动一个或多个远程节点。
我查看了以下选项
1) 要在本地主机上启动远程节点,请使用从模块或 net_kernel:start() API。 但是对于后者,似乎无法指定启动脚本文件名等选项。
2) 在任何情况下,我都不需要从属配置,因为我需要模仿在本地生成的节点的类似行为 以及远程主机。在我当前的设置中,我无权 rsh 到远程主机。我能想到的解决方法是 在远程主机上运行的默认节点,以便通过 spawn 或 rpc:async_call 和 os:cmd 启用远程节点创建 组合
还有其他API接口可以启动erl吗?
我不确定这是解决此问题的最佳或最干净的方法,我想知道 Erlang 的解决方法吗?
提前致谢
【问题讨论】:
我想澄清一下 net_kernel:start() 用于将非分布式节点转换为分布式节点(已经运行的节点),而不是启动远程节点。所以不能采用启动脚本或任何其他选项。 【参考方案1】:有pool 模块可能对您有所帮助,但它使用slave
模块(其中rsh
)。
【讨论】:
以上是关于erlang分布式编程的主要内容,如果未能解决你的问题,请参考以下文章
您如何设计基于 Erlang/OTP 的分布式容错多核系统的架构?