Node.js 使用Erlang+;后端上的其他语言

Node.js 使用Erlang+;后端上的其他语言,node.js,nginx,erlang,Node.js,Nginx,Erlang,我想学习更多的Erlang,作为一个游乐场,我想将其用于核心后端逻辑 我想知道,为了与最终用户连接,我是否应该选择另一个堆栈,比如NodeJS,并以某种方式将其连接到Erlang 比如说,我想通过NodeJ与用户建立websocket连接,因为它非常适合websocket,然后在NodeJ和Erlang之间创建通信,将所有数据处理传递给Erlang,同时让NodeJ充当后端和最终用户之间的中间人 我到底应该使用中间人技术,还是使用Erlang+Apache/nginx并使用Erlang实现整个系

我想学习更多的Erlang,作为一个游乐场,我想将其用于核心后端逻辑

我想知道,为了与最终用户连接,我是否应该选择另一个堆栈,比如NodeJS,并以某种方式将其连接到Erlang

比如说,我想通过NodeJ与用户建立websocket连接,因为它非常适合websocket,然后在NodeJ和Erlang之间创建通信,将所有数据处理传递给Erlang,同时让NodeJ充当后端和最终用户之间的中间人


我到底应该使用中间人技术,还是使用Erlang+Apache/nginx并使用Erlang实现整个系统是一个好的解决方案?

Erlang的主要优势正是处理客户端连接和向工作人员发送路由请求。轻量级和隔离的进程使它能够很好地扩展到大量连接,同时具有很强的容错能力。 Erlang通常不是处理大量数字的正确语言,它应该用于请求处理和路由

因此,与其将node.js之类的东西作为连接处理程序和路由器,不如使用例如or(目前更流行的选择)作为websocket服务器,并在Erlang中处理所有事情

在生产系统中,您可以使用nginx/haproxy作为Erlang服务器前面的负载平衡器/代理,但无论如何都不是必需的

关于Erlang服务器可伸缩性的一篇有趣的文章是,它是关于comet样式的HTTP请求,而不是web套接字,但是有很多好的信息