代码之家  ›  专栏  ›  技术社区  ›  OTZ

二郎有什么用,值得投资吗?[副本]

  •  4
  • OTZ  · 技术社区  · 15 年前

    可能重复:
    Where is Erlang used and why?

    在哪些用例中,Erlang比主流语言做得更好,并且满足了投资需求?

    4 回复  |  直到 8 年前
        1
  •  8
  •   Kyle d'Oliveira    15 年前

    Erlang最大的吸引力可能是它(在大多数情况下)总是线程安全的。由于单核处理器的限制,并行编码有很大的吸引力。 这可以用C++语言或java语言来实现,但是在没有细微错误的情况下,很难让所有的东西都运行。

    使用Erlang,编写并行代码要容易得多,尽管它可能没有其他语言的顺序速度,但它安全得多,并且您最终花费更少的时间(通常没有时间)调试复杂的并行gotcha。

    作为一个特别的例子,Erlang是处理web接口的一个非常好的工具。因为Yaws可以可靠地处理大量的并行会话,而对于速度,Misultin运行请求的速度比我见过的任何其他web界面都快。

    我想说Erlang是值得投资的,因为至少,由于它是一种函数语言,因此它也能让您养成编写好的顺序代码的习惯(遵循函数语言模式)

        2
  •  3
  •   Stefan    15 年前

    Erlang基于所谓的actor模型。actor是一段代码,它侦听消息并做出反应。每个演员都有自己的思路。与Java或pthreads相比,线程非常轻量级。给参与者的消息可能会导致它向另一个参与者发送消息,以此类推。消息也可以是一段代码。Erlang允许在不关闭系统的情况下热交换代码。您还可以考虑将Scala和F#作为替代方案,因为它们在库级别上支持actor模型,并且是真正的通用语言。Erlang不支持可变变量。

        3
  •  2
  •   Aillyn    15 年前

    这是卖给我同事的东西:

    Apache vs Yaws

        4
  •  1
  •   DigitalRoss    15 年前

    部署与内在价值

    与Ruby和Rails一样,Erlang有其固有的优点,但它的部署范围更多地取决于它已经编写了哪些内容。现在,部署Erlang的关键是 RabbitMQ .

    关于内在的优点,与其说Erlang的吸引力是语言,不如说它是一个基于 Actor Model 消息传递而不是共享内存并发。

    我们中的许多人都非常确定共享内存线程是引入并发的错误方法。可视化和测试可能的交互几乎是不可能的,一个曾经工作过的程序有可能因为在更实际并发的硬件上运行而开始失败,即使线程模型和二进制代码根本没有改变。