npm install核心流程大致分为以下5步:

  1. npmregistry 查询依赖压缩包的网址。
  2. 下载压缩包,存放在cache目录,供下次安装时使用。
  3. 解压压缩包到当前项目的node_modules目录。
  4. 把所有安装的包信息写入package-lock.json,供下次安装时使用。
  5. 继续处理依赖的依赖

install的过程速度也和每一个步骤息息相关:
(1)共享工程package-lock.json,可以避免向registry查询的步骤,并且保证不同环境下安装包的一致性。
(2)使用下载速度快的registry镜像(例如jd镜像)。
(3)预先进行依赖关系分析构建依赖关系,然后最后再并行下载(例如yarn)。