I moduli non abilitati influiscono sulle prestazioni?


91

Avere moduli Drupal presenti, ma non abilitati, ha alcun effetto sulle prestazioni di un sito Drupal?

Per dirla in altro modo ... La rimozione di moduli disabilitati da un sito Drupal avrebbe un impatto positivo sulle prestazioni?

Risposte:


97

Generalmente no, ciò non influirà sulle prestazioni, tranne quando si sta visualizzando la pagina di selezione dei moduli (admin / build / moduli o admin / moduli). I moduli disabilitati non vengono caricati in memoria e non vengono mai eseguiti.


24
Detto questo, i moduli disabilitati lasciano ancora variabili e tabelle di database in modo che il modulo possa essere riattivato senza perdita di dati. Se non si prevede di utilizzare nuovamente un modulo disabilitato, è necessario disinstallare il modulo tramite admin / build / modules / uninstall in D6 o admin / modules / uninstall in D7.
Dave Reid,

1
Immagino che questo possa essere un esempio di un modulo che aggiunge una colonna alla tabella dei nodi, drupal.org/project/quickstats, quindi suppongo che se non disinstalli il modulo, ciò rappresenterà un consumo necessario di risorse (forse minimo? ) ad altri moduli quando si estraggono le informazioni sul nodo.
cigotete,

62

Sì. Può.

Nonostante ciò che dicono gli altri, ci sono diverse situazioni in cui la performance diminuirà.

  1. I moduli disabilitati e non correttamente disinstallati possono avere gravi effetti sulle prestazioni: le variabili per un modulo non vengono rimosse e verranno caricate ad ogni richiesta di risposta. Le impostazioni locali per un modulo (nel caso in cui si utilizzi un sito tradotto) non vengono rimosse e causano un sovraccarico su una tabella di database già ingombrante.
  2. Drupal utilizza la tabella di sistema come cache per evitare ricerche nel filesystem per i moduli. Più voci ci sono in quella tabella, più lenta sarà. Questo effetto è piuttosto piccolo, perché la tabella di sistema è abbastanza ben indicizzata. Tuttavia, la cancellazione della cache e la visita delle pagine di amministrazione causano la ricostruzione di questa tabella. La ricostruzione della tabella con oltre 200 moduli inutilizzati è circa 25 volte più lenta che senza moduli inutilizzati. La quantità di ricostruzione di questa tabella può essere piuttosto elevata in alcune situazioni strane, durante lo sviluppo e così via.

I moduli non utilizzati non utilizzano altra memoria se non durante la ricostruzione della tabella di sistema. I moduli inutilizzati non causano ricerche più o più lente sul tuo filesystem, tranne durante la ricostruzione della tabella di sistema. Se si supera la X-migliaia di moduli, il file system stesso può causare problemi.


5
I moduli disabilitati non sono necessariamente moduli non disinstallati correttamente: potrei disabilitare un modulo per evitare che appaiano le sue pagine di impostazione, e non perché voglio disinstallarlo. Ad esempio, nell'interfaccia utente di Drupal.org Views è abilitata solo quando qualcuno ha bisogno di modificare una vista e viene quindi disabilitata al termine della modifica della vista.
kiamlaluno

3
Inoltre, se hai installato devel / admin_menu, hai una scorciatoia per "Disabilitare i moduli di sviluppo", che disabilita elementi come l'interfaccia utente di Views, l'interfaccia utente delle regole, l'interfaccia utente del campo, ecc. Che non sono necessari per i siti di produzione normalmente in esecuzione. Ciò può far risparmiare qualche MB in ogni thread PHP / Apache su una normale macchina LAMP!
geerlingguy,

5
Sono consapevole che un modulo non abilitato non è di per sé un modulo che una volta era disabilitato. Il vostro esempio di punti di vista e dei moduli devel-alike fa dimostrare il mio punto: quando si disattiva vista-ui vostro tavolo locale e il vostro tavolo varaibles è / disseminato / con residuo di stoffa che viene caricata e valutata in ogni pagina. Recentemente ho ripulito un sito in cui c'erano 5 MB (!) E quasi 60 MB (!) Di variabili rimanenti e stringhe locali non utilizzate, rimanenti di moduli vecchi e non più utilizzati. Indurre le ricerche locali a diventare query lente e causare 5 MB di memoria aggiuntiva su ogni pageload.
Berkes,

Se disabilito l'interfaccia utente di Views, è perché voglio ancora usarlo; è solo che non lo voglio abilitato quando non ne ho bisogno. In tal caso, la rimozione di tutte le variabili Drupal per quel modulo avrebbe l'effetto negativo di ripristinare tutte le impostazioni che ho modificato. Non è sicuramente quello che vorrei. Un modulo non abilitato è un modulo disabilitato. Sembra che tu stia confondendo un modulo disinstallato con un modulo disabilitato, dove quest'ultimo è un modulo che ho disabilitato perché lo uso in situazioni specifiche, come l'interfaccia utente di Views che è davvero necessaria quando si modifica una vista; Non ne ho bisogno in altri casi.
kiamlaluno

2
Quando usi l'interfaccia utente delle viste come descrivi: disabilitata con l'opzione per usarla a piacimento; esso ha un effetto sulle prestazioni . Questo è ciò che chiede l'OP. E apparentemente è così che la gente lo usa (almeno tu lo fai). Quindi, la conclusione è che i moduli disabilitati possono avere un impatto sulle prestazioni; specialmente se scegli di non rimuoverli del tutto; e sempre se non si disinstallano correttamente
berkes

8

Con installato suppongo che intendi all'interno della cartella dei moduli drupal ("siti / tutti / moduli" o "siti / tuo / sito / moduli"), giusto?

In tal caso, i moduli disabilitati non influiranno affatto sulle prestazioni, proprio quando visiti la tua pagina "admin / build / modules". Drupal ricostruisce la cache di alcuni elementi del modulo (come hook_menu ).


7

Dalla mia esperienza, la riduzione delle prestazioni dai moduli disabilitati è trascurabile (e relativi, 4000 moduli disabilitati potrebbero rendere le cose un po 'più lente di 30 moduli disabilitati, ecc.)

Personalmente, sono solo più preoccupato per il codice inutilizzato (e probabilmente obsoleto) che si trova nel mio repository e nelle mie directory web, ma sono analmente ritentivo in questo modo.


4

Tecnicamente no e sì. I modelli normalmente disabilitati non vengono caricati in memoria, quindi non influiscono sulle prestazioni del sito in quanto tali. Ma se i moduli disabilitati contengono molti dati nelle variabili, è consigliabile disinstallarli in modo da liberare la memoria.


3

La rimozione del codice dei moduli disabilitati potrebbe non avere effetto sul sito.

Quindi di nuovo, se ad un certo punto hai installato un modulo, questo avrà popolato il database con alcune tabelle. Pertanto, più moduli vengono installati, maggiore è la possibilità di influire sulle prestazioni del database.

La disinstallazione del modulo rimuoverà quelle tabelle non necessarie.

Ancora una volta, le prestazioni dipendono dal numero di moduli installati.


3

I moduli disabilitati che non vengono disinstallati ma eliminati fisicamente dal sistema di cartelle influiranno negativamente sulle prestazioni del sito. Avevo 5 di questi moduli e, a causa di ciò, c'erano altre 10.000 chiamate alla funzione is_dir (). Ho usato il modulo missing_modules (missing_module) per identificare i moduli mancanti e risolto il problema nel database.


1

Disinstallato e disabilitato non influirà sulle prestazioni.

Ma se il modulo è disabilitato solo allora potrebbe avere alcune tabelle associate, quindi quelle sono un onere aggiuntivo sul database drupal.

E come detto prima ci saranno alcuni problemi di prestazioni significativi sulla pagina del modulo di drupal. Molte volte questa pagina non viene caricata e richiede molto tempo a causa della visualizzazione di tutti i moduli installati / disinstallati.

Quindi per superare questa situazione dovremmo rimuovere fisicamente i moduli non utilizzati da / sites / all / modules / drive.


1
"Disinstallato e disabilitato non influiranno sulle prestazioni." - in casi specifici possono. Soprattutto esecuzione delle azioni di amministrazione. Non solo la pagina "moduli", alcuni moduli per la traduzione o la revisione del codice funzionano anche su moduli non abilitati. E ci sono cose minori come le prestazioni del filesystem.
Mołot

1

I moduli disabilitati non influiscono sulle prestazioni del sito drupal.

Si consiglia, tuttavia, di non scaricare i moduli che non sarebbero utili al tuo sito.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.