基本介绍:
OTP的全称是Open Telecom Platform(开放电信平台)。这是一个很有误导性的名称,其实有OTD是很通用的。它是一个应用程序操作系统,包含了一组库和实现方式,可以构建大规模、容错和分布式的应用程序。它由瑞典电信公司爱立信开发,在爱立信内部用于构建容错式系统。标准的Erlang分发套装包含OTP库。
基本的服务器:
在了解了OTP的基本定义之后,我们开始写一个基本的服务器了,这个服务器用回调函数来作为它的参数。
-module(server1).
-author("DQ").
%% API
-export([start/2, rpc/2]).
start(Name, Mod) ->
register(Name, spawn(fun() -> loop(Name, Mod, Mod:init()) end)).
rpc(Name, Request) ->
Name ! {self(), Request},
receive
{Name, Response} -> Response
end.
loop(Name, Mod, State) ->
receive
{From, Request} ->
{Response, State1} = Mod:handle(Request, State),
From ! {Name, Response},
loop(Name, Mod, State1)
end.
上面这个串代码就是我们基本的服务器了,然后我们再写一个回调模块。
-module(name_server).
-author(