3

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

erlang 实际上只将二进制文件发送到中央节点吗?

它是否直接负责将二进制数据解析为实际语音?还是通过端口将其馈送到另一种语言/程序?

负责通话的速度,速度就像我说话和你听到之间的延迟一样。

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

4

1 回答 1

5

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

  • 首先,你在 Erlang 中实现所有东西,包括许多低级的东西。这可能不会扩展那么多,因为信号处理非常昂贵。然而,作为一个原型,它可以工作,你可以打电话等等。

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

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

  • Erlangs 分布特性主要用于在控制背板中提供冗余。也就是说,我们在多个节点之间同步呼叫建立等表,以方便在硬件故障时进行节点接管。

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

于 2011-02-09T08:37:03.313 回答