加速NPM包安装

加速NPM包安装,npm,Npm,当我将我的应用程序部署到AWS时,它会被复制到一个新的目录中,因此NPM将在每次部署期间安装所有相同的软件包,这可能需要很多时间。这些软件包中的大多数在构建之间没有改变(如果有的话),因此让它进行完整的npm安装似乎是一种浪费 我的应用程序服务器运行一系列不同的节点应用程序,因此无法进行全局安装。相反,我希望app store的节点包位于一个在部署过程中不会被删除的位置,但可以在npm安装过程中根据需要更新包 NPM是否有特定于应用程序的模块目录的概念,而该目录不位于应用程序的子文件夹中?这样我

当我将我的应用程序部署到AWS时,它会被复制到一个新的目录中,因此NPM将在每次部署期间安装所有相同的软件包,这可能需要很多时间。这些软件包中的大多数在构建之间没有改变(如果有的话),因此让它进行完整的npm安装似乎是一种浪费

我的应用程序服务器运行一系列不同的节点应用程序,因此无法进行全局安装。相反,我希望app store的节点包位于一个在部署过程中不会被删除的位置,但可以在
npm安装过程中根据需要更新包

NPM是否有特定于应用程序的模块目录的概念,而该目录不位于应用程序的子文件夹中?这样我就可以删除应用程序文件夹,而不必一遍又一遍地重新安装相同的软件包


我可以通过使用符号链接或迁移当前节点模块目录来实现这一点。

如果锁定依赖项版本,NPM可能会缓存包。所以安装不会花太多时间


如果您不愿意这样做,您可以全局安装依赖项,并使用
npm link
命令链接它们(这基本上是您自己创建一个符号链接!)。然后,由您定期更新全局安装的软件包。

您可以全局安装同一软件包的多个版本吗?不可以。此外,您不能对本地软件包执行此操作,它们将被覆盖。因此,这就是使用本地软件包的问题所在。例如,我有一个使用express 3.1的App1和另一个使用express 3.0的App2。我希望我的appserver能够同时运行这两个应用程序,但每次都不必进行完整的NPM安装。你检查过npm缓存了吗?他们可能会支持你解决这个问题。我查看了NPM缓存。需要更多的时间来完全解决它。更新了我的问题,希望能让它更清楚。