2016-03-19 22 views
12

Ho nodo v.4.4 con npm v.2.14.20 (predefinito fornito con Windows Installer). Il mio sistema operativo: Windows 7 a 64 bit. Hardware: laptop Dell, 16 GB di RAM, SSD, core i7.comandi super slow node npm

Sono di fronte a un problema con npm estremamente lento. Per esempio quando voglio controllare la versione del nodo con

node --version 
v4.4.0 

ricevo uscita 4.4.0 all'interno di millisecondi. Ma quando si digita

npm --version 

ho bisogno di aspettare ridicole 8-15 secondi per ricevere un output! Ed è lo stesso con ogni singolo comando npm.

Quello che ho provato: aggiornare npm (alla più recente versione 3.x), aggiornare il nodo a 5.9.0, ho anche provato la mia fortuna con le versioni x86 - stessa cosa.

  1. Degli indizi che cosa può causare tali "sleep" (è solo con npm, ogni altro comando cmd funziona bene, il sistema funziona bene)?
  2. Io apprezzo eventuali suggerimenti come posso mettere a punto questa cosa per vedere cosa sta succedendo sotto il cofano
+0

sfortuna con questo? http://stackoverflow.com/questions/29395211/npm-install-extremly-slow-on-windows – Rabea

+0

no, ho provato sia la disattivazione di IPv6 che la protezione degli endpoint di symantec (questo è ciò che ho su questo laptop) - senza alcun effetto. Tuttavia, quando ho provato ad es. 'npm view grunt' due volte al secondo colpo (immagino dalla cache) dura circa 6 secondi (quindi è più veloce del primo che è di circa 16 secondi) ... – Mic

+0

Qualche altro aggiornamento oltre a quanto sopra? Grazie! – MoMo

risposta

1

sto scommettendo di avere un sacco di elementi nella vostra PATH. Questo è un sintomo comune di questo scenario.

nel vostro terminale, eseguire:

echo "$PATH" 

Se l'uscita ha più di 8 o 9 i due punti in essa, o se ci sono grandi directory come la directory principale / in là, allora questo molto bene può essere il colpevole.

Come base per il confronto, la mia cura artigianale PATH su MacOS è:

/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin 

E se corro which npm, l'output è:

/usr/local/bin/npm 

Questo mi dice che il mio npm si trova early nel mio PATH, che è importante per le prestazioni, poiché lo PATH viene cercato da sinistra a destra per l'esistenza di npm all'interno di ciascuna directory.

È possibile provare rapidamente la mia PATH dall'alto senza conseguenze permanenti eseguendo semplicemente:

OLDPATH="$PATH" 
PATH='/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin' 

Ora provare a eseguire i comandi che in precedenza erano veloce e lento e vedere se c'è qualche differenza.

Se si inizia a vedere "command not found" errori, provare in modo incrementale aggiungere cose al tuo PATH o semplicemente eseguire:

PATH="$OLDPATH" 

In caso contrario, se la prestazione rimane la stessa, allora non è probabilmente la vostra PATH.Ma se la situazione migliorasse, continua a leggere per renderlo permanente.

Prendere il PATH che funziona meglio per voi e inserirlo nel file di avvio della shell. In genere si trova a ~/.bashrc o ~/.bash_profile. Prova a trovare il file di avvio che ha già una linea , commenta la linea esistente (assicurati di aggiungere un commento esplicativo) e quindi inserisci una riga simile con il valore migliore.

+0

Scommetto che questo è per Unix o qualcosa del genere. Ma questa domanda riguarda Windows, non Unix – SteveFest

Problemi correlati