【发布时间】:2020-08-23 01:44:24
【问题描述】:
Deno 使用 v8 来执行 javascript,但考虑到它直接运行 typescript 的事实,我想知道是否会因此而降低性能。
似乎它只是第一次编译代码。那么是否可以将编译作为部署步骤并避免与编译相关的启动开销?
node.js 和 Deno 的性能对比还有其他方面吗?
【问题讨论】:
标签: node.js performance v8 deno
Deno 使用 v8 来执行 javascript,但考虑到它直接运行 typescript 的事实,我想知道是否会因此而降低性能。
似乎它只是第一次编译代码。那么是否可以将编译作为部署步骤并避免与编译相关的启动开销?
node.js 和 Deno 的性能对比还有其他方面吗?
【问题讨论】:
标签: node.js performance v8 deno
Deno 在此处跟踪一些关键性能指标:https://deno.land/benchmarks
就预编译而言,它在路线图上并在本期中进行了跟踪:https://github.com/denoland/deno/issues/986
【讨论】:
由于在代码中同时使用 JavaScript 和 TypeScript,Deno 的性能一直都优于 Nodejs。
Deno 作为基于 V8 构建的安全 TypeScript 运行时,是 Google 的 JavaScript 运行时引擎,对后端开发人员来说是一个很好的希望,因为它是用 Rust 构建的,我认为它比 C++ 更好,它给 Nodejs 带来了生命(Deno 的核心是用 Rust 编写的,Node 是用 C++ 编写的)。
我还没有开始完全使用 deno,但毫无疑问,它将成为 Nodejs 的最佳替代品,因为它几乎包含了 Nodejs 所拥有的所有东西,以及新开发世界所需的额外现代功能。
我正在尝试在我的网站#Donnekt 上制作它的教程
【讨论】:
(第二段的答案)
Deno 将编译后的资产存储在 DENO_DIR 中。您可以使用命令“deno info”检查它。如果您部署整个 DENO_DIR 以及您的源代码,则可以避免在启动时进行 TypeScript 编译。
您还可以通过设置 DENO_DIR 环境变量来更改 DENO_DIR 的位置。
DENO_DIR=/path/to/your_deno_dir deno run entrypoint.ts
【讨论】: