首页 > 解决方案 > 减少 node_module 文件夹中的文件(或依赖项)数量

问题描述

我们正在运行多个 node.js 微服务。我们部署过程的一部分有一个“解压缩任务”,由于节点模块文件夹中的文件数量,它需要 10 多分钟。由于安全问题,我们无法在运行这些微服务的服务器上运行 npm install。

我想知道是否有任何常用方法可以减少文件数量以及节点模块文件夹中的依赖项?因为即使我将文件夹的大小减少了几十兆字节,文件的数量仍然很大。

标签: node.jspackagenode-modules

解决方案


可以将整个项目捆绑到单个文件和/或可执行文件中。要捆绑您的项目,您可以使用ncc并像这样执行它:

ncc build input.js -o dist

这将在 dirst 文件夹中创建 index.js,并将所有其他文件捆绑在一起。也可能需要本机节点文件。如果您的代码库中有动态需求,这可能是一个问题。

要创建单个二进制文件,您可以使用pkg。它支持不同的节点版本并构建跨平台:

pkg index.js

创建文件“index-linux”、“index-macos”和“index-win.exe”。

当然,您可以很好地组合这两个包。这应该会减少您要部署的文件数量。当然,这使得通过它进行调试相当困难。所以走这条路时要记住这一点!


推荐阅读