erlang实现跨节点(节点可位于不同的计算机上)发送消息非常简单,代码如下:
-module(test). -export([start/0,server/0,request/2]). handle(Reqdata) -> "Hello " ++ Reqdata. server() -> receive [From,{request,X}] -> io:format("Get ~p from client ~p!~n",[X,From]), Resp = handle(X), From ! {reply,Resp}, server() end. start() -> register(testserver,spawn(test,server,[])). request(To,Name) -> {testserver, To} ! [self(),{request,Name}], receive {reply,Res} -> io:format("Get ~p from ~p!~n",[Res,To]) after 5000 -> io:format("connect failed~n",[]) end.
1,将代码拷贝到两台主机上comA,comB上,其中comA为server端,comB为client端,这里需要确保comB配置好了comA的host
2,在comA和comB上创建~/.erlang.cookie,输入同样的内容
在服务器comA开启服务
comA:~/project # erl -sname hserver Erlang R15B03 (erts-5.9.3.1) [source] [64-bit] [smp:2:2] [async-threads:0] [hipe] [kernel-poll:false] Eshell V5.9.3.1 (abort with ^G) (hserver@comA)1> c(test). {ok,test} (hserver@comA)2> test:start(). true Get "hello server!" from client <9327.39.0>! (hserver@comA)3>
在客户端comB发起消息
comB:~/project # erl -sname hclient Erlang R16B (erts-5.10.1) [source] [64-bit] [smp:2:2] [async-threads:10] [hipe] [kernel-poll:false] Eshell V5.10.1 (abort with ^G) (hclient@comB)1> c(test). {ok,test} (hclient@comB)2> test:request(hserver@comA,"hello server!"). Get "Hello hello server!" from hserver@comA! ok
需要在comB的/ets/hosts中配置comB_ip comB
试了一下test:request(hserver@192.168.2.2,"hello server!").会有语法错,估计必须是通过主机名发起消息
相关推荐
erlang 25.1
confetti, Erlang配置提供程序/应用程序 纸屑五彩纸屑是你的Erlang应用程序的配置提供程序。基本上是 application:get_env/2 在类固醇上。特性管理控制台可以通过telnet维护部门访问将为你 love在运行时重新加载( ...
erlang编程指南学习笔记,包含具体操作命令例子
NULL 博文链接:https://jias.iteye.com/blog/615679
官网下载实在是困难,我把当前Erlang / OTP 21.0 版本提交到这里提供给大家和自己下载 原先积分0的现在都这么高了,为了方便大家,放出云盘地址:https://pan.百度.com/s/1hb8vPiMslXxNuJC8PvnKgg提取码wmx8
erlang tcp_servererlang tcp_servererlang tcp_server
rabbitmq安装相关的包,erlang.rpm/rabbitmq-server.rpm/socat.rpm,安装步骤看https://blog.csdn.net/qq_37846169/article/details/126085715?utm_source=app&app_version=5.5.0
erlang分布式 XMPP Seerlang分布式 XMPP Serverrvererlang分布式 XMPP Servererlang分布式 XMPP Server
This guide covers Erlang/OTP requirements, recommendations, caveats and commonly used installation sources. Unsupported Versions Erlang/OTP versions older than 19.3 are not supported by currently ...
Joe的那篇erlang论文 Programming Erlang + 源码包 Erlang Programming Concurrent Programming in Erlang efficiecy guide 资源齐全.希望能帮到你.
erlang otp25 win安装包
windows下部署rabbitmq所需要的erlang20.3和rabbitmq server。erlang官网下载不是一般的慢。
erlang学习资料
erlang server源码 一个聊天室服务器源码
erlang 聊天室服务器和客服端代码
otp_win64_22.2.exe ...rabbitmq-server-3.8.2.exe windows64位下 欢迎下载 官网地址: Erlang:https://www.erlang.org/downloads RabbitMQ:https://www.rabbitmq.com/install-windows.html
NULL 博文链接:https://xiajs.iteye.com/blog/1871551
Erlang/OTP Application完整例子,含代码和二进制,对于学习Erlang/OTP Application很有帮助。 配套文章http://blog.csdn.net/mycwq/article/details/12610677
rabbitmq安装前的环境安装,Erlang23.0 Windows64安装包,官网下载了几个小时
erlang学习3erlang学习3erlangerlang学erlang学习3习3学习3