参考资料

  1. sury安装加速
  2. 国内常用的镜像站主要分为高校/科研机构和互联网企业两大类
  3. raven安装加速
  4. packman安装加速
  5. qubesos安装加速
  6. pipxe安装加速
  7. rpmfusion安装加速
  8. qemu.git安装加速

npm安装加速

npm 安装加速

在前端与 Node.js 日常开发中,`npm install` 慢是高频痛点。延迟往往来自两处:一是默认 registry(`https://registry.npmjs.org`)在国外,网络往返时间长;二是依赖树庞大时解析与下载并行度不足。本文从镜像源、缓存、客户端、网络四个层面给出可落地的加速方案,按「改动成本低 → 收益高」排序,便于逐条尝试。

一、切换国内镜像源(收益最高)

最直接的做法是把 registry 指向国内镜像。目前常用的是 npmmirror(原淘宝源): bash

全局切换

npm config set registry https://registry.npmmirror.com

确认生效

npm config get registry > 注意:旧地址 `https://registry.npm.taobao.org` 已停用,继续使用会出现证书或 404 报错,请改用 `registry.npmmirror.com`。

也可以写入项目级 `.npmrc`,只对当前项目生效,适合团队统一: ini

项目根目录 .npmrc

registry=https://registry.npmmirror.com 常用镜像速查:

用途配置项示例地址
包仓库`registry``https://registry.npmmirror.com`
Node 二进制`disturl``https://npmmirror.com/mirrors/node`
Electron`electron_mirror``https://npmmirror.com/mirrors/electron/`
node-sass`sass_binary_site``https://npmmirror.com/mirrors/node-sass/`

涉及二进制下载的包(如 electron、node-sass、puppeteer),只改 registry 往往不够,需要额外指定对应 mirror,否则安装卡在「下载二进制」阶段。

二、善用缓存与离线安装

npm 会把下载过的包缓存到本地,重复安装时不必重新请求网络。 bash

查看缓存目录

npm config get cache

清缓存(仅在缓存损坏时使用)

npm cache clean --force

校验缓存完整性

npm cache verify 配合锁文件 `package-lock.json`,CI 环境推荐用 `npm ci` 而不是 `npm install`。前者严格按锁文件安装、跳过部分解析逻辑,速度更快且可复现: bash npm ci 如果本地已有缓存,可以在断网或弱网时尝试: bash npm install --prefer-offline # 优先使用缓存,缺失才联网 npm install --offline # 完全离线,缓存缺失则报错

三、更换更快的包管理器

不同客户端的依赖解析算法差异很大,切换客户端常能带来数倍提升。

客户端特点常用命令
npm官方,兼容性最好`npm install`
pnpm硬链接复用,磁盘占用小、速度快`pnpm install`
yarn并行下载,缓存成熟`yarn install`
Bun极快的解析与安装`bun install`

pnpm 通过全局内容寻址存储复用文件,多项目共存时优势明显;启用前把镜像也配置好: bash npm install -g pnpm pnpm config set registry https://registry.npmmirror.com pnpm install

四、网络与并发调优

1. 调整并发与超时

在网络较差时适当提高并发、放宽超时,减少重试带来的浪费: bash npm config set fetch-retries 5 npm config set fetch-retry-maxtimeout 60000 npm config set fetch-timeout 300000

2. 配置代理

公司内网或需要科学上网时,通过代理访问: bash npm config set proxy http://proxy.example.com:8080 npm config set https-proxy http://proxy.example.com:8080

清除代理

npm config delete proxy npm config delete https-proxy 注意:如果代理只为公网服务,请把镜像域名排除,避免「国内源走代理反而更慢」。

3. 减少必须下载的内容

bash npm install --no-audit --no-fund # 跳过审计与捐赠提示 npm install --omit=dev # 生产环境不装 devDependencies `--no-audit`、`--no-fund` 能省去安装结束后的额外网络请求,在 CI 中收益稳定。

五、常见问题排查

现象可能原因处理方式
卡在下载二进制未设置对应 mirror配置 `disturl` / `*_mirror`
证书错误 / 404用了已停用的淘宝旧源换成 `registry.npmmirror.com`
安装速度不稳定网络抖动或并发过低提高 `fetch-retries`,检查代理
CI 每次都很慢未缓存 `~/.npm`配置 CI 缓存缓存目录
版本解析异常缓存损坏`npm cache verify` 后重试

六、小结与推荐组合

对大多数国内团队,一套稳妥的组合是:

  1. registry 指向 `registry.npmmirror.com`(项目 `.npmrc` 固化);
  2. 启用客户端缓存,CI 缓存 `~/.npm` / pnpm store;
  3. 优先用 `npm ci` 或 pnpm,保证可复现与速度;
  4. 给 electron、node-sass 等配置专用 mirror;
  5. 按需加 `--no-audit --no-fund`,减少收尾请求。

加速的本质是减少无效的网络往返:换近的源、复用好缓存、选高效的客户端。逐条应用后,多数项目的安装时间都能明显下降。建议先在单个项目验证,确认无版本或兼容问题后,再推广到团队统一的 `.npmrc` 中。

作者:王壹杰
时间:2026-10-07
来源:https://mirror.ciilii.com/