测试环境和http://willvvv.iteye.com/blog/1523918
一样,192.168.0.182(centos-182)和192.168.0.183(centos-183),
1.按照上面链接(步骤1-4)设置通过ssh hostname 免输入密码直接登录。
2.设置erlang的magiccookie,由于都是以root账号操作,分别在两台机子上执行以下命令
cd /root
vi .erlang.cookie
输入
centos_erlang
:wq 退出保存
chmod 400 .erlang.cookie,linux下需要用户对magiccookie有读权限
3.启动epmd进程,它负责映射符号名到机器地址在两个机器都执行:epmd -daemon
4.ping-pong测试代码,来源自网上erlang教程,tut17.erl
-module(tut17).
-export([start_ping/1, start_pong/0, ping/2, pong/0]).
ping(0, Pong_Node) ->
{pong, Pong_Node} ! finished,
io:format("ping finished~n", []);
ping(N, Pong_Node) ->
{pong, Pong_Node} ! {ping, self()},
receive
pong ->
io:format("Ping received pong~n", [])
end,
ping(N - 1, Pong_Node).
pong() ->
receive
finished ->
io:format("Pong finished~n", []);
{ping, Ping_PID} ->
io:format("Pong received ping~n", []),
Ping_PID ! pong,
pong()
end.
start_pong() ->
register(pong, spawn(tut17, pong, [])).
start_ping(Pong_Node) ->
spawn(tut17, ping, [3, Pong_Node]).
5.在centos-183上执行erl -sname 'pong' ,启动pong节点,进入erl命令行之后输入 tut17:start_pong().
在centos-182上执行 erl -sname 'ping',启动ping节点,进入erl命令行之后输入 tut17:start_ping('pong@centos-183').
命令及输出见下图:
注意在ping节点上的erl命令行启动ping进程的时候如果输入tut17:start_ping(pong@centos-183). 会报错如下:
** exception error: bad argument in an arithmetic expression
in operator -/2
called as pong@centos - 183
在参考“庄周梦蝶”的http://www.blogjava.net/killme2008/archive/2007/06/15/124547.html
时就出现这个错误,后来在stackoverflow 上找到一个相关问题 http://stackoverflow.com/questions/413736/naming-nodes-in-erlang
才得以解决!
- 大小: 9.8 KB
- 大小: 4.3 KB
分享到:
相关推荐
Erlang是一种高级编程语言,特别适用于并发、分布式和实时计算系统。它的设计目标是创建一个高度容错、可扩展的平台,常用于构建大规模、高可用性的电信、银行和互联网应用。标题“erlang21.1-windows-64”指的是...
error: /tmp/esl-erlang_26.0.2-1~alinux~3_x86_64.rpm : not an rpm package (or packape manifest): arning: /tmp/rabbitmg-erver 3.12.4-1 all.rpm: Header V4 RSA/SHA512 Signature, key ID 6026dfca: NOKEY ...
标题中的"erlang-23.2.3-1.el7.x86_64.rpm"和"erlang-23.2.1-1.el7.x86_64.rpm.rar"代表了两个不同的Erlang版本。`.rpm`文件是用于Red Hat Enterprise Linux (RHEL) 和其衍生发行版如CentOS的软件包管理格式,而`....
erlang-xmerl-22.3-1.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
总结,"erlang-22.3-1.el7.x86_64.rpm"是一个专为RabbitMQ准备的Erlang版本,适合在RHEL 7或类似系统上运行,利用Erlang的并发、分布式和容错特性来保证RabbitMQ的稳定性和效率。通过RPM包的形式,用户可以便捷地在...
"erlang-rpm-21.3.4.zip"是一个包含Erlang版本21.3.4的RPM(Red Hat Package Manager)包的压缩文件,适用于Linux操作系统,尤其是基于RPM包管理系统的发行版,如CentOS、Fedora和RHEL等。 Erlang的主要特点包括: ...
Erlang是一种高级编程语言,特别为并发、分布式计算和容错设计,广泛应用于网络通信、实时系统和大型分布式计算环境中。最新版的Erlang是23.3.4.3-1.el7.x86_64.rpm,这个版本针对CentOS 7进行了优化。Erlang以其轻...
erlang-xmerl-23.0.2-2.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
erlang-xmerl-22.2-1.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
在标题中的"erlang-18.3-1.el7.centos.x86_64.zip",我们看到的是Erlang的一个特定版本,18.3,针对64位的CentOS 7操作系统(el7)的安装包。这个版本的Erlang包含了必要的组件和服务,使得它能够在CentOS 7上稳定...
Ringo 是一个分布式的Key-Value存储系统,采用 ErLang 语言开发。支持磁盘数据存储。 Ringo is an experimental, distributed, replicating key-value store based on consistent hashing and immutable data. ...
erlang-xmerl-23.0.3-1.el7.x86_64.rpm,rabbitMQ安装需要依赖此环境。Erlang 是一种多用途编程语言,主要用于开发并发和分布式系统。它最初是一种专有的编程语言,Ericsson 使用它来开发电话和通信应用程序。
erlang-23.1-1.el8.x86_ ,erlang官网下载很慢,所以提供该下载链接。
esl-erlang_24.2.1-1_centos_7_amd64.rpm
esl-erlang_25.0.3-1_centos_7_amd64.rpm erlang_25.0.3-1 rpm用于rabitmq基础环境安装
erlang-asn1-19.3.6.4-1.el7.x86_64.rpm
erlang 安装包。 rabbitmq 安装所需要的
erlang-20.3-1.el7.centos.x86_64.rpm
erlang-21.3-1.el7.x86_64.rpm rabbitmq基础语言环境。
标题中的"erlang-19.0.4-1.el7.centos.x86_64.zip"揭示了我们讨论的是Erlang的一个特定版本——19.0.4,该版本针对的是Linux发行版CentOS 7的64位架构。Erlang的版本号通常包括主要版本号、次要版本号和补丁版本号,...