Non voglio disabilitare xdebug quando sto sviluppando. Volevo solo confermare che l'esecuzione di xdebug nell'ambiente dev avrebbe dovuto avere nessun impatto sul compositore che installava le librerie/le prestazioni dell'app sul server di produzione.
C'è un enorme impatto del solo caricamento di Xdebug. Rallenta l'esecuzione del Composer verso il basso di 3x o 4x, anche quando la funzione di creazione del profilo non è abilitata.
In altre parole: xdebug ha un valore inestimabile per il debug, ma aumenta la memoria utilizzata e il tempo di elaborazione di Composer.
Come disattivare Xdebug per corre Composer?
Il mio suggerimento è di scrivere un piccolo helper di invocazione per eseguire Composer.
L'helper è uno script di bash o batch che chiama PHP con un php.ini
personalizzato, in particolare configurato per Composer. Lo chiamiamo: php.ini-composer
.
È possibile copiare l'attuale php.ini
e regolarlo per l'esecuzione di Composer rimuovendo xdebug o commentandolo in questo modo: ;zend_extension = "/path/to/my/xdebug.so"
.
Mentre ci si trova: l'impostazione memory_limit=-1
è anch'essa utile.
Il comando completo sembra quindi su Windows: php.exe -c php.ini-composer composer.phar %*
clonare l'idea per uno script bash.
E puoi trovare la risposta completa alla tua domanda nelle domande frequenti di Composer.
https://getcomposer.org/doc/articles/troubleshooting.md#xdebug-impact-on-composer
E 'stato aggiunto/aggiornato solo poche ore fa.
Alcune alternative (invece di utilizzare file ini separata) sono menzionati anche here.
fonte
2015-11-25 23:12:39
Non si esegue 'compositore install' (per instaling produzione-dipendenze su server di produzione) in una shell ssh direttamente sul server di produzione o sul computer locale? Quest'ultimo sarà più lento se XDebug è abilitato, ma potrebbe essere necessario XDebug per es. PHPUnit ... – SpazzMarticus