共享您的缓存
Lerna 提供的计算缓存可以分布在多台机器上。您可以自行构建缓存实现,也可以使用 Nx Cloud。Nx Cloud 是一个提供快速且零配置的分布式缓存实现的应用。对于开源项目和大多数闭源项目都是完全免费的(在此处了解更多)。
您可以通过运行以下命令将工作空间连接到 Nx Cloud:
npx nx connect-to-nx-cloud
终端输出
✔ 启用分布式缓存以加快 CI 速度 · 是
> NX 生成 @nrwl/nx-cloud:init
更新 nx.json
> NX 通过 Nx Cloud 启用分布式缓存
除了缓存之外,Nx Cloud 还提供无配置的分布式执行、
用于查看复杂运行的 UI 和 GitHub 集成。在 https://nx.app 了解更多
您的工作空间目前是未认领的。未认领工作空间的运行详情可以被任何
拥有链接的人在 cloud.nx.app 上查看。在以下链接处认领您的工作空间以限制访问。
https://cloud.nx.app/orgs/workspace-setup?accessToken=您的访问令牌
要查看远程缓存的实际效果,请运行:
lerna run build --scope=header && nx reset && lerna run build --scope=header
终端输出
> lerna run build --scope=header
> header@0.0.0 build
> rimraf dist && rollup --config
src/index.tsx → dist...
创建 dist 用时 786ms
———————————————————————————————————————————————————————————————————————————————————————————————————————————————— —————————
Lerna (powered by Nx) 成功为项目 header 运行目标 build(2秒)
在 https://cloud.nx.app/runs/k0HDHACpL8 查看日志并调查缓存未命中情况
> NX 重置 Nx 工作空间缓存并停止 Nx 守护进程。
这可能需要几分钟。
> NX 守护进程服务器 - 已停止
> NX 成功重置 Nx 工作空间。
> lerna run build --scope=header [远程缓存]
> header@0.0.0 build
> rimraf dist && rollup --config
src/index.tsx → dist...
创建 dist 用时 786ms
—————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
Lerna (powered by Nx) 成功为项目 header 运行目标 build(664ms)
Nx 从缓存中读取输出,而不是运行命令,共 1 个任务中的 1 个。
Nx Cloud 使得重用 header 成为可能:https://nx.app/runs/P0X6ZGTkqZ
将您的工作空间连接到 Nx Cloud 账户
在您的工作空间中启用 Nx Cloud 后,您将看到以下内容:
> NX 注意 Nx Cloud 已启用
您的工作空间目前是公开的。任何有代码访问权限的人
都可以在 nx.app 上查看工作空间。
您可以在以下地址将工作空间连接到您的 Nx Cloud 账户
https://nx.app/orgs/workspace-setup?accessToken=N2Y3NzcyO...
(您可以稍后再进行此操作。)
点击此链接将工作空间与您的 Nx Cloud 账户关联。如果您还没有 Nx Cloud 账户,可以立即创建一个。
认领工作空间后,您将能够管理权限、创建访问令牌、设置账单等。
您还将看到一个交互式教程,帮助您探索分布式缓存和 Nx Cloud 用户界面。
如果您丢失了此链接,仍然可以将工作空间连接到 Nx Cloud。转到 nx.app,创建一个账户,并使用 nx.json
中的访问令牌连接您的工作空间。
跳过云服务
类似于 --skip-nx-cache
会指示 Nx 不使用缓存,传递 --no-cloud
将告诉 Nx 不使用 Nx Cloud。