SOA:为什么不使用Erlang/OTP Web服务器作为服务?

ska*_*tek 8 architecture erlang soa wsdl erlang-otp

在阅读了面向服务的体系结构原则网站和相应的维基百科文章之后,我想到了:Erlang/OTP平台可以被视为SOA平台,SOA应用程序可以构建在它上面.

唯一的事情是这样一个系统中每个服务的服务合同是非常具体的:为了在Erlang/OTP中调用服务,Orchestrating层必须通过Erlang消息调用或调用gen_server(取决于实现) .

这不会让任何对Erlang/OTP平台范围之外的服务的调用.

但是,如果我们尝试通过将所有相应的服务功能移动到基于Erlang的Web服务器(如Mochiweb)并基本上从gen_server更改每个服务的接口来调用XML来构建每个服务,该怎么办?

这将允许从基于WSDL的通用服务合同的标准化"砖块"组成各种应用程序.

此外,这种方法将让我们继续使用OTP主管和其他OTP功能,因为这样的服务仍将是OTP应用程序.

因此,问题是:您是否认为使用OTP Web服务器(Mochiweb)作为服务构建具有面向服务的体系结构方法的软件应用程序是一个好主意?附加的XML处理层能否破坏这种方法的所有优点?

使用Erlang/OTP的SOA

I G*_*ERS 7

未完成此操作的主要原因是您将自己限制在SOA协议中.Erlang使用一些附加点(监视器)实现IP协议.虽然你可以做到,但我想知道它是否值得.

原则上,二郎神已经全部用于模具想法 SOA,但没有所有的膨胀SOAPWSDL :)


Muz*_*hua 5

这是我们Erlang的主要应用:Web服务。我们通常使用Yaws Appmods这里文章可以向您展示很多有关其工作原理的信息。由于以下原因,Erlang一直是SOA的良好平台:

1.副作用免费的代码非常容易编写和测试。
2.隔离:Erlang中的进程有助于以干净的方式隔离每个服务请求。
3.大多数图书馆二郎神像mochiwebmisultin并且Chicago Boss已经从地面行动建Erlang编写支持SOA系统。

将自己的OTP应用程序应用到这些框架中的任何一个框架下都是一个好主意。erlang适用于SOA的另一个重要原因是冗余。SOA系统需要启动。如果服务请求失败,则会沿不同的路径重试(当然,在物理层,将由分发OTP应用程序的另一台机器来处理)。

试一试,好主意