gpt4 book ai didi

node.js - 为什么 Node.js 不在运行时之前编译?

转载 作者:IT老高 更新时间:2023-10-28 22:08:35 25 4
gpt4 key购买 nike

我对这项技术的理解是,它是动态编译成程序集的。在速度范围内,它比 Java 慢,但比 Ruby 和 Python 快。在客户端,解释器是有意义的,但在服务器端,我的第一个想法是在运行之前编译,或者至少可以选择这样做,是一种最佳架构。如果 JavaScript 以这种方式预编译,它会比 Java 运行得更快吗?还是与弱类型语言有关,这意味着 JavaScript 总是比 Java 慢?

最佳答案

一些 Node.js 是 C++ 并且是预编译的。不过我的理解是,我们努力将其尽可能多地保留在 Javascript 中,但在性能较差的地方使用 C++。

如果没有 V8 JavaScript Engine,Node.js 是不可能的。 ,这是编译 javascript 的内容。该引擎以速度极快而闻名。它是为 Chrome 浏览器构建的,但在 Node.js 中的性能也得到了返回。

关于 Node.js 的性能,作为一个 Web 服务器,它至少与 Apache+PHP 等其他领先的 Web 服务器不相上下。因此,在常见用例中性能不是问题。也就是说,有更快的技术。基于 Erlang 的服务器以在并发负载下速度更快而著称(有趣的是,Erlang 也是一种动态类型语言)。

对于纯粹的数字运算 cpu/gpu 密集型任务,Node.js 不是一个好的选择,除非你用 Fabric Engine 调整它, 在这种情况下它可以与 C++ 相提并论。

目前有几个项目正在探索 JavaScript 的速度问题:

关于node.js - 为什么 Node.js 不在运行时之前编译?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9247429/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com