Erlang 分布式程式設計1 同一臺機器,兩個節點

2021-08-22 06:06:01 字數 985 閱讀 6908

-module(kvs).

-export([start/0,store/2,lookup/1]).

%分布式程式設計

start()->register(kvs,spawn(fun()->loop() end)).

store(key,value)->rpc().

lookup(key)->rpc().

rpc(q)->

kvs ! ,

receive

->

reply

end.

loop()->

receive

}->

put(key,),

from ! ,

loop();

}->

from ! ,

loop()

end.

%呼叫%c(kvs).

%kvs:start().

%kvs:store(,"stockholm").

啟動兩個終端視窗

第乙個終端視窗

erl -name [email protected] -setcookie 123

net_adm:ping([email protected]).

nodes().                        //檢視其它節點名稱

cd("z:/erlangprogram").

c(kvs).

kvs:start().

第二個終端視窗

erl  -name [email protected] -setcookie 123

//遠端呼叫,rpc 是乙個標準庫的模組

rpc:call('[email protected]',kvs,store,[weather,fine]).

rpc:call('[email protected]',kvs,lookup,[weather]).

//計算機名字不能有其他符號

erlang之分布式程式設計入門

我們可以看出,我們使用erl sname name的方式建立了2個節點,乙個叫pp,乙個叫faker,然後pp呼叫rpc call 函式呼叫了faker的函式,實現了不同節點的通訊。我們可以看出,我們這裡使用的是 name,而不是 sname,如果我們要在2太不同的電腦上進行2個節點間的通訊應該用 ...

erlang分布式入門(一) ping pong

測試環境和 一樣,192.168.0.182 centos 182 和192.168.0.183 centos 183 1.按照上面鏈結 步驟1 4 設定通過ssh hostname 免輸入密碼直接登入。2.設定erlang的magiccookie,由於都是以root賬號操作,分別在兩台機子上執行以...

用MPI進行分布式記憶體程式設計(1)

並行程式設計導論 第三章部分程式 程式3.1執行例項 include include include const int max string 100 int main else mpi finalize 告知系統mpi已使用完畢 return0 在天河平台執行結果 自己虛擬機器執行結果 3.2執行...