婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁(yè) > 知識(shí)庫(kù) > Erlang分布式節(jié)點(diǎn)中的注冊(cè)進(jìn)程使用實(shí)例

Erlang分布式節(jié)點(diǎn)中的注冊(cè)進(jìn)程使用實(shí)例

熱門(mén)標(biāo)簽:地圖標(biāo)注如何弄全套標(biāo) 在電子版地圖標(biāo)注要收費(fèi)嗎 實(shí)體店地圖標(biāo)注怎么標(biāo) 武漢AI電銷(xiāo)機(jī)器人 股票配資電銷(xiāo)機(jī)器人 外呼系統(tǒng)會(huì)封嗎 電銷(xiāo)機(jī)器人 深圳 南京電銷(xiāo)外呼系統(tǒng)哪家好 萬(wàn)利達(dá)綜合醫(yī)院地圖標(biāo)注點(diǎn)

上一篇文章中說(shuō)到, 注冊(cè)進(jìn)程關(guān)聯(lián)的原子具有全局作用域, 這里的全局指的是當(dāng)前 Erlang 虛擬機(jī), 在分布式中, 便是當(dāng)前分布式節(jié)點(diǎn). 因此, 在一個(gè)節(jié)點(diǎn)中注冊(cè)進(jìn)程關(guān)聯(lián)的原子, 在另一個(gè)節(jié)點(diǎn)中是不能直接使用, 而必須配和目標(biāo)節(jié)點(diǎn)使用.

復(fù)制代碼 代碼如下:

{RegName, Node} ! {messages}.

例子

先啟動(dòng)一個(gè) Server 節(jié)點(diǎn)

復(fù)制代碼 代碼如下:

erl -sname server

然后在 Erlang Shell 中操作

先簡(jiǎn)單介紹幾個(gè)常用函數(shù)

復(fù)制代碼 代碼如下:

% 查看當(dāng)前節(jié)點(diǎn)
node().
% => 'server@Gentoo-PC'

% 查看所有已連接的節(jié)點(diǎn)
nodes().
% => []                                        % 此時(shí)還未連接其它節(jié)點(diǎn)

% 查看當(dāng)前節(jié)點(diǎn)是否存活
is_alive().
% => true


然后進(jìn)入正題
復(fù)制代碼 代碼如下:

% 啟動(dòng)上一篇文章中最后的那個(gè)程序
test:start().
% Waiting for new message.
% => true

% 當(dāng)前節(jié)點(diǎn)可以使用 testp 原子
testp ! message.
% New message: message
% Waiting for new message.
% => message


然后啟動(dòng)另外一個(gè) Client 節(jié)點(diǎn)
復(fù)制代碼 代碼如下:

erl -sname client

在新的 Erlang Shell 中
復(fù)制代碼 代碼如下:

nodes().
% => []                                         % 此時(shí)未連接節(jié)點(diǎn)

% 當(dāng)前節(jié)點(diǎn)無(wú)法直接使用這個(gè)原子的
testp ! {}.
% ** exception error: bad argument
%      in operator  !/2
%         called as testp ! {}

% 需要配合目標(biāo)節(jié)點(diǎn)一起使用
{testp, 'server@Gentoo-PC'} ! {}.
% => {}                                         % 語(yǔ)句返回值


此時(shí), server 節(jié)點(diǎn)就會(huì)接收到消息, 并打印出
復(fù)制代碼 代碼如下:

% New message: {}
% Waiting for new message.

節(jié)點(diǎn)間首次連接后, 兩個(gè)節(jié)點(diǎn)將會(huì)保持連接

在 Client 節(jié)點(diǎn)中

復(fù)制代碼 代碼如下:

nodes().
% => ['server@Gentoo-PC']

在 Server 節(jié)點(diǎn)中
復(fù)制代碼 代碼如下:

nodes().
% => ['client@Gentoo-PC']

結(jié)尾

當(dāng)然, 這只是個(gè)方法, 由于在模塊中定義了 call 函數(shù)包裹了起來(lái), 所以可以使用遠(yuǎn)程調(diào)用, 調(diào)用 Server 節(jié)點(diǎn)上的 test:call 方法.

可以使用 rpc 模塊中的 call/4 方法遠(yuǎn)程調(diào)用函數(shù)

復(fù)制代碼 代碼如下:

% 在 Node 節(jié)點(diǎn)上執(zhí)行 apply(Module, Function, Args)
% 調(diào)用成功時(shí)返回 Result, 調(diào)用失敗時(shí)返回 {badrpc, Reason}
-spec rpc:call(Node, Module, Function, Args} -> Result | {badrpc, Reason}

在 Client 節(jié)點(diǎn)中
復(fù)制代碼 代碼如下:

rpc:call('server@Gentoo-PC', test, call, ['message from other node']).

標(biāo)簽:汕頭 濟(jì)寧 廣東 臺(tái)州 濟(jì)源 安徽 武威 泰安

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Erlang分布式節(jié)點(diǎn)中的注冊(cè)進(jìn)程使用實(shí)例》,本文關(guān)鍵詞  Erlang,分布式,節(jié)點(diǎn),中的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Erlang分布式節(jié)點(diǎn)中的注冊(cè)進(jìn)程使用實(shí)例》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于Erlang分布式節(jié)點(diǎn)中的注冊(cè)進(jìn)程使用實(shí)例的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 临海市| 虎林市| 邵阳市| 慈利县| 襄垣县| 元朗区| 濮阳市| 上栗县| 秦皇岛市| 临桂县| 玉田县| 凤翔县| 喀什市| 门源| 黄浦区| 武安市| 凤冈县| 宁德市| 双峰县| 广平县| 错那县| 清远市| 朔州市| 会泽县| 内丘县| 礼泉县| 洞口县| 双城市| 磴口县| 多伦县| 元江| 苗栗市| 临洮县| 都安| 忻州市| 霸州市| 砚山县| 宜兰县| 商城县| 桑植县| 中山市|