Erlang OTP I / O - 几个问题

时间:2011-02-09 06:29:43

标签: erlang otp

我读过erlang的最大采用者之一是电信行业。我假设他们使用它在节点之间发送二进制数据,并提供简单的冗余,效率和并行性。

erlang是否实际上只将二进制文件发送到中心节点?

直接负责将二进制数据解析为实际语音吗?或者它是通过端口提供给另一种语言/程序的?

负责电话的速度,速度和我说话之间的延迟和听到的速度。

有可能erlang仅用于简化并行行为,c ++或类似用于处理顺序函数的速度吗?

1 个答案:

答案 0 :(得分:5)

我只能猜测实际电信交换机的实现方式,但我可以推荐一种方法:

  • 首先,您在Erlang中实现了所有内容,包括许多低级内容。由于信号处理成本非常高,因此可能无法扩展。然而,作为原型,它可以工作,你可以拨打电话等等。

  • 其次,您决定如何处理性能瓶颈。您可以将它们推送到C(++)并获得大约10的因子,或者您可以将它们推送到FPGA并获得大约100的因子。最后,您可以执行CMOS工作并获得1000倍的因素。后一种方法也更陡峭,所以你决定你需要什么,然后去购买。

  • 当您按下呼叫设置等按钮时,Erlang仍然可以控制控制背板。但是一旦分配了呼叫,我们就将信道移交给下层。 ATM切换在这里更容易,因为一旦设置了连接,您就不需要更改它(ATM是面向连接的,IP是面向数据包的)。

  • Erlangs分发功能主要用于在控制背板中提供冗余。也就是说,我们在多个节点之间同步调用设置表等,以便在硬件发生故障时促进节点接管。

  • 诀窍是在原型后使用端口和NIF来加速程序的较慢部分。