Erlang 和 BEAM 的未来
不久前,我对 Erlang(来自 C++/PHP/Java 世界)产生了浓厚的兴趣 - 而且我看到它已被 Ericsson
、Facebook
在业界成功使用code>、Goldman Sachs
等。所以,我认为这将是一个构建高要求应用程序的绝佳平台,具有低延迟配置,具有比 Java 等更干净、更好的语言(为我)。
但是“哇效应”消失后,我发现有很多 高性能 Java 库似乎解决了 Erlang 理论上最适合的许多问题(实时、低延迟应用程序、并发、容错等)。此外,似乎有些事情尽管有 Erlang 配置文件,但在 BEAM 上无法实现(例如 LMAX Disruptor并发框架)。
那么问题来了:Erlang 仍然是构建此类高要求应用程序的最佳平台吗?如果我们坚持使用一个非常成熟的 (J)VM 并尝试使其变得更好,而不是尝试用更少的可用资源(OTP 团队的规模与 JVM 团队的规模、支持者等)实现类似的目标,这不是更好吗?使用 BEAM 是否有可能实现这种性能和采用
?
我只是想澄清一下:我不想在这里引发一场口水战。我只是很好奇,因为我真的很喜欢 Erlang,并且我认为这是一个很棒的平台,我愿意投入时间和精力在其上构建现实生活中的项目。但我只是想知道其他人对此会怎么说,如果我错了,也许有人可以纠正我。
Some time ago I got seriously interested in Erlang (coming from C++/PHP/Java world) - and I've seen it has been successfuly used in the industry, by Ericsson
, Facebook
, Goldman Sachs
, etc. So, I thought it would be a great platform to build high demanding apps, with low-latency profile, with a lot cleaner and nicer language than, for example, Java (for me).
But after "wow effect" has gone, I discovered that there are many high performance Java libraries that seem to resolve many problems that Erlang is theoretically best suited for (real-time, low-latency applications, concurrency, fault-tolerance, etc.). Moreover, it seems that there are things that, despite Erlang profile, are just not possible to achieve on BEAM (like LMAX Disruptor concurrent framework).
So the question arises: is Erlang still the best platform to build such demanding applications
? Wouldn't it be better if we stick to one, very mature (J)VM and try to make it even better than trying to achieve something similar with less resources available (size of OTP team vs. JVM team, supporters, etc) ? And is it possible at all to achieve this kind of performance and adoption
with BEAM ?
And just to make things clear: I don't want to init a flame war here. I am just curious because I really like Erlang and I think it's a great platform and I'd like to invest time and effort to build real-life projects on it. But I'd just like to know what others might say about that and - if I am wrong - maybe someone could correct me.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论