我正在尝试学习 Erlang 来做一些简单但可扩展的网络编程。我基本上想编写一个程序来完成互联网骨干上的服务器所做的事情——但规模较小。我想尝试建立一个带有 Web 可访问服务器的 Intranet,这些服务器将充当 Intranet [sic] 的网关,并将数据路由到连接的客户端和/或其他网关。
高流量来自这样一个事实,即数据不仅会从客户端流向网关再到客户端,而且可能必须绕过几个网关才能到达目的地(例如数据在互联网上的传输方式)。这意味着网关不仅要处理来自其客户端的流量,还要处理来自其他网关客户端的流量。
我认为这会导致异常高的流量,即使对于中等数量的客户端和网关也是如此。
来自 Python 以及其他脚本语言的背景,我习惯于挖掘自定义模块来解决我的问题。我知道 Erlang 是为高流量网络编程而设计的,但我能找到的关于这类东西的库/模块只有 gen_tcp。
这是否意味着 Erlang 已经针对这种事情进行了如此优化,以至于您可以使用其最基本的模块启动它并期望它能够很好地扩展?