缩小会影响 Node.js 的性能吗?

Posted

技术标签:

【中文标题】缩小会影响 Node.js 的性能吗?【英文标题】:Does minifying impact performance of Node.js? 【发布时间】:2012-08-02 01:36:32 【问题描述】:

在浏览器中,缩小、连接或加载异步 javascript 会对性能产生积极影响。这对于在 Node.js 中运行的代码也是如此吗?

作为示例,对实例化的类的属性进行过多的注释和使用长名称通常会显着影响性能和内存使用吗?

【问题讨论】:

groups.google.com/forum/?fromgroups#!topic/nodejs/CzphiQUPgmE 在编写我们将被其他人使用的模块时,您应该始终使用 uglify 【参考方案1】:

是的,它提高了编译时性能,但编译时对您的进程的整个生命周期来说是如此微不足道,因此它应该无关紧要。唯一的区别是如果您出于某种奇怪的原因不断启动和停止节点程序,如果您这样做,可能是错误的。

但是,您不会想丑化您的服务器端代码,因为如果您收到错误消息,您会想知道在您的人类可读代码中的什么位置可以找到并修复它。

我敢打赌,真正的问题是:你认为几乎微不足道的编译时性能会抵消它为调试代码节省的时间吗?

答案是,只需要使用普通的人类可读的 Javascript。

【讨论】:

我缩小了服务器端 NodeJS 代码,因为我的一些安装托管在我的客户端服务器上。它实际上主要是关于以一种小方式保护您的代码。 @Spock 是你的标准做法之一,还是它在 node/js 的世界中是全行业的?客户可以接受吗?当他们说某些东西不起作用并给你“堆栈跟踪”时会发生什么? @Vee6> 一般来说,我绝对不建议这样做。它绝对不是被广泛使用的东西,而且真的没有任何好处。如果某些东西不起作用,我从不在生产代码中调试。但你是对的,它可能会影响堆栈跟踪的使用。所以:不要缩小服务器代码,除非有人告诉你(比如我的例子) 大家好,其实我对缩小节点文件很好奇。你们能告诉我缩小节点文件的正确路径吗?我搜索了很多,但他们都建议使用 uglifyJs,这对我不起作用。 “如果你因为一些奇怪的原因不断地启动和停止节点程序”我知道这个答案是旧的,但现在像 aws lambda 这样的服务被广泛使用,并且一个不经常执行的函数(暗示冷启动)必须经常编译节点代码

以上是关于缩小会影响 Node.js 的性能吗?的主要内容,如果未能解决你的问题,请参考以下文章

缩小 NodeJS 中使用的代码是不是有意义?

电源计划卓越性能有用吗

带你从零学Node.js

node.js 1

Node.js Buffer(缓冲区)

nvm npm node.js的关系