前段时间,我对 Erlang(来自 C++/PHP/Java 世界)产生了浓厚的兴趣——我已经看到它已经在业界成功使用,由Ericsson
, Facebook
,Goldman Sachs
等。所以,我认为这将是一个很棒的平台构建高要求的应用程序,具有低延迟的配置文件,使用比 Java(对我而言)更干净和更好的语言。
但是在“哇效应”消失之后,我发现有许多高性能 Java 库似乎解决了 Erlang 理论上最适合的许多问题(实时、低延迟应用程序、并发、容错等。 )。此外,尽管有 Erlang 配置文件,但似乎有些事情在 BEAM 上是不可能实现的(如LMAX Disruptor 并发框架)。
那么问题来了:Erlang 仍然是构建这样的最佳平台demanding applications
吗?如果我们坚持使用一个非常成熟的 (J)VM 并尝试使它比尝试用更少的可用资源(OTP 团队的规模与 JVM 团队的规模、支持者等)实现类似的目标更好,那不是更好吗?performance and adoption
是否有可能通过 BEAM实现这种目标?
只是为了澄清一点:我不想在这里引发一场激烈的战争。我只是好奇,因为我真的很喜欢 Erlang,我认为它是一个很棒的平台,我想投入时间和精力在上面构建现实生活中的项目。但我只是想知道其他人对此会怎么说——如果我错了——也许有人可以纠正我。