Come configurare un server con 4 g di memoria per eseguire drupal 7


9

Sto installando Drupal 7 su un nuovo server con 4 GB di memoria. Vorrei avere qualche suggerimento su come configurarlo correttamente, quanta memoria dare a MySQL e quanta memoria dare a PHP. Una cosa che ho scoperto è che l'esecuzione di Drupal 7 sul server Zend è tre volte più veloce rispetto all'esecuzione su un normale server Apache. (Penso che abbia a che fare con la cache del codice operativo. Ho notato che con il modulo di sviluppo utilizza un terzo della memoria.

Puoi condividere le tue configurazioni con me?

Risposte:


5

Se disponi già di dati Drupal7, dovresti caricarli in un ambiente di gestione temporanea ed eseguire alcune dimensioni del buffer in base alla quantità di dati che hai.

Passaggio 1) È innanzitutto necessario calcolare le dimensioni del buffer per il set di dati .

Passaggio 2) Se le dimensioni consigliate superano il 75% della RAM installata (nel tuo caso 3 GB), limitare i buffer necessari a 3 GB.

Passaggio 3) Se disponi di dati InnoDB e non hai abilitato innodb_file_per_table, devi ripulire InnoDB segmentando ogni tabella nel suo spazio tabella fisico (ciò deve essere fatto solo una volta) .

Una volta fatto questo, dovresti pianificare di eseguire questo controllo di configurazione (passaggi 1 e 2) ogni 6 mesi per assicurarti di disporre della corretta memorizzazione nella cache di MySQL.

È interessante notare che ho rivolto una domanda simile a questa e ho risposto il 15 aprile 2011 .


4

Alcune cose da guardare :

Un articolo da leggere :

Rackspace: distribuire Drupal nel cloud con nginx e boost dovrebbe darti molte idee.

Piccola citazione sulla memorizzazione nella cache del codice operativo:

Usiamo APC come cache del codice operativo. Ciò salva il server dalla ricompilazione del codice PHP ad ogni caricamento della pagina. Inoltre, il tutto si adatta facilmente alla RAM (in genere forniamo APC 128 MB di RAM). Ciò riduce drasticamente l'utilizzo della CPU. Gli utenti connessi possono ora navigare nel sito molto più velocemente. Ma possiamo ancora gestirne solo un numero limitato. Possiamo fare un po 'meglio. Invece di interrogare MySQL ogni volta che andiamo nella cache, possiamo archiviare queste tabelle in memoria. Qui vengono memcached e il modulo cacherouter.


2

Ho iniziato con my_huge conf dalla directory mysql; Ho anche aggiunto la cache di Varnish al mix. Come hai già scoperto, Zend migliora i lotti delle prestazioni.

Dopo aver eseguito alcuni giorni, ho eseguito lo script mysqltuner e ho seguito alcuni dei consigli, principalmente sulla cache della tabella temporanea.


1

A seconda delle dimensioni del sito potresti voler guardare anche memcached. Questo competerà per le risorse con mysql ma può ridurre il carico su di esso.


In realtà, è possibile ridimensionare sia il pool di buffer InnoDB che la cache delle chiavi MyISAM se memcached è abbastanza grande. In questo modo, memcached non è in competizione con mysql, ma mysql completerà semplicemente memcached come canale di dati piuttosto che come database principale. +1 per aver suggerito prima memcached !!!
RolandoMySQLDBA
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.