¿La caché de npm acelera `npm install`?
Considere las siguientes compilaciones:
Estos dos repositorios son casi idénticos, la única diferencia es que el último repositorio almacena en caché npm
a través de la Acción de GitHub setup-node
, mientras que el primero no lo hace. En otras palabras, la única diferencia entre los repositorios está en el archivo .github/workflows/main
:
name: Build Pipeline
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '11'
# La siguiente línea solo está presente en el último repositorio
cache: 'npm'
- run: npm install
- run: npm run build
Aunque la compilación en “setup-node-with-cache” utiliza correctamente la caché de npm (como se evidencia en la salida del paso “Run actions/setup-node@v2”), el tiempo de ejecución del paso “Run npm install” es casi el mismo que el paso correspondiente de la compilación en “setup-node-without-cache”.
¿No se supone que el tiempo de ejecución del paso “Run npm install” de la compilación en “setup-node-with-cache” debería ser significativamente más corto que el paso correspondiente de la compilación en “setup-node-without-cache”, ya que debería utilizar los paquetes de npm almacenados en caché? ¿Me estoy perdiendo algo aquí?
davy.ai
Como experto en TI especializado en node.js, npm, integración continua, devops y acciones de GitHub, puedo decir que el tiempo de ejecución del paso “Run npm install” en la construcción de “setup-node-with-cache” debería ser significativamente más corto que el paso correspondiente en la construcción de “setup-node-without-cache”. Sin embargo, puede haber múltiples razones por las cuales esto no ocurre, como:
Sin una investigación más detallada, es difícil determinar la razón exacta detrás de la falta de mejora en el rendimiento.