Ottimizza apache per l'uso di WP


10

Saluti,

Ho un sito WP con oltre 150.000 visualizzazioni di pagina / giorno.

Funziona con una CPU Intel Core i5 760 a 2,80 GHz, con Centos e 4 GB di RAM.

Il problema è che WP consuma troppa RAM e dopo un po 'il servizio viene sovraccaricato e la RAM si esaurisce. Ho provato molti tweek di Apache ma nulla sembra funzionare. Dopo aver riavviato il sito Apache funzionerà senza problemi ma dopo un'ora o due verrà nuovamente sovraccaricato.

Qualcuno di voi ragazzi ha qualche suggerimento che mi aiuterà?

A proposito, sto usando WP-Super Cache.

AGGIORNAMENTO: Informazioni aggiuntive

Ecco la mia lista di plugin:

  • Akismet
  • Modulo di contatto 7
  • Domain Mirror
  • Inserimento di immagini più veloce
  • IntenseDebate
  • Responsabile ruoli
  • SexyBookmarks
  • Smart Youtube
  • Classificazione a stelle per recensioni
  • Miniatura per estratti
  • WP-Sondaggi
  • WP-SWFObject
  • WP Super Cache

Per quanto riguarda i tweeks, ho provato alcuni consigli da qui

Le mie impostazioni sono:

 <IfModule prefork.c> 
  StartServers       8
  MinSpareServers    5 
  MaxSpareServers   20 
  ServerLimit      256 
  MaxClients       200 
  MaxRequestsPerChild  1000
 </IfModule>




<IfModule worker.c> 
  StartServers       2 
  MaxClients         150
  MinSpareThreads     25 
  MaxSpareThreads    75
  ThreadsPerChild     25
  MaxRequestsPerChild  1000 
</IfModule>




 Timeout 120 KeepAlive On
 MaxKeepAliveRequests 100
 KeepAliveTimeout 2

Inoltre ecco il mio my.cnf

[mysqld]
set-variable=local-infile=0
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1

# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0

[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

AGGIORNARE

Ecco il mio attuale utilizzo della memoria

ps -ylC httpd --sort:rss

S   UID   PID  PPID  C PRI  NI   RSS    SZ WCHAN  TTY          TIME CMD
S   504  8446  8444  0  78   0  7884 59507 554050 ?        00:00:00 httpd
S   504 29164  8444  0  78   0 13380 87043 -      ?        00:00:00 httpd
S   504 29268  8444  0  75   0 13396 87043 429493 ?        00:00:00 httpd
S   504 29294  8444  0  75   0 13396 87043 -      ?        00:00:00 httpd
S   504 29255  8444  0  75   0 13400 87043 -      ?        00:00:00 httpd
S   504 29269  8444  0  76   0 13400 87043 387946 ?        00:00:00 httpd
S   504 29256  8444  0  75   0 13404 87043 -      ?        00:00:00 httpd
S   504 29265  8444  0  75   0 13404 87043 -      ?        00:00:00 httpd
S   504 29288  8444  0  75   0 13404 87043 429493 ?        00:00:00 httpd
S   504 28644  8444  0  75   0 13484 87043 -      ?        00:00:00 httpd
S   504 29293  8444  0  75   0 13484 87043 semtim ?        00:00:00 httpd
S   504 27280  8444  0  75   0 13496 87043 -      ?        00:00:00 httpd
S   504 28332  8444  0  75   0 13500 87043 -      ?        00:00:00 httpd
S   504 27762  8444  0  75   0 13504 87043 -      ?        00:00:00 httpd
S   504 28645  8444  0  75   0 13504 87043 -      ?        00:00:00 httpd
S   504 29242  8444  0  75   0 13508 87043 -      ?        00:00:00 httpd
S   504 28199  8444  0  75   0 13512 87043 429493 ?        00:00:00 httpd
S   504 28195  8444  0  75   0 13528 87043 -      ?        00:00:00 httpd
S   504 28197  8444  0  75   0 13528 87043 429493 ?        00:00:00 httpd
S   504 27245  8444  0  75   0 13536 87043 -      ?        00:00:00 httpd
S   504 28196  8444  0  75   0 13536 87043 -      ?        00:00:00 httpd
S   504 27756  8444  0  75   0 13540 87043 -      ?        00:00:00 httpd
S   504 27969  8444  0  75   0 13540 87043 -      ?        00:00:00 httpd
S   504 27074  8444  0  75   0 13544 87043 -      ?        00:00:00 httpd
S   504 27279  8444  0  75   0 13544 87043 -      ?        00:00:00 httpd
S   504 27926  8444  0  75   0 13548 87043 -      ?        00:00:00 httpd
S   504 28191  8444  0  75   0 13548 87043 semtim ?        00:00:00 httpd
S   504 28673  8444  0  75   0 13548 87043 -      ?        00:00:00 httpd
S   504 27089  8444  0  75   0 13552 87043 -      ?        00:00:00 httpd
S   504 27825  8444  0  75   0 13552 87043 -      ?        00:00:00 httpd
S   504 27974  8444  0  75   0 13552 87043 -      ?        00:00:00 httpd
S   504 28330  8444  0  75   0 13552 87043 -      ?        00:00:00 httpd
S   504 26051  8444  0  75   0 13556 87043 -      ?        00:00:00 httpd
S   504 28343  8444  0  75   0 13556 87043 -      ?        00:00:00 httpd
S   504 26822  8444  0  75   0 13560 87043 -      ?        00:00:00 httpd
S   504 27975  8444  0  75   0 13560 87043 -      ?        00:00:00 httpd
S   504 28662  8444  0  75   0 13560 87043 -      ?        00:00:00 httpd
S   504 24949  8444  0  75   0 13564 87043 -      ?        00:00:00 httpd
S   504 28639  8444  0  75   0 13564 87043 -      ?        00:00:00 httpd
S   504 24924  8444  0  75   0 13572 87043 -      ?        00:00:00 httpd
S   504 27826  8444  0  75   0 13572 87043 -      ?        00:00:00 httpd
S   504 28192  8444  0  75   0 13572 87043 -      ?        00:00:00 httpd
S   504 28683  8444  0  76   0 13572 87043 -      ?        00:00:00 httpd
S   504 19032  8444  0  75   0 13576 87043 -      ?        00:00:00 httpd
S   504 26832  8444  0  75   0 13576 87043 -      ?        00:00:00 httpd
S   504 28186  8444  0  75   0 13580 87043 -      ?        00:00:00 httpd
S   504 24940  8444  0  75   0 13584 87043 -      ?        00:00:00 httpd
S   504 27883  8444  0  75   0 13584 87043 -      ?        00:00:00 httpd
S   504 27962  8444  0  75   0 13588 87043 -      ?        00:00:00 httpd
S   504 28331  8444  0  75   0 13588 87043 -      ?        00:00:00 httpd
S   504 18521  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 24291  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 24307  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 26503  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 26510  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 27100  8444  0  75   0 13592 87043 -      ?        00:00:00 httpd
S   504 27248  8444  0  75   0 13592 87043 429493 ?        00:00:00 httpd
S   504 28344  8444  0  75   0 13592 87043 429493 ?        00:00:00 httpd
S   504 24952  8444  0  75   0 13596 87043 -      ?        00:00:00 httpd
S   504 26588  8444  0  75   0 13596 87043 -      ?        00:00:00 httpd
S   504 27065  8444  0  75   0 13596 87043 -      ?        00:00:00 httpd
S   504 27102  8444  0  75   0 13600 87043 -      ?        00:00:00 httpd
S   504 27104  8444  0  75   0 13600 87043 429493 ?        00:00:00 httpd
S   504 27474  8444  0  75   0 13600 87043 429493 ?        00:00:00 httpd
S   504 27763  8444  0  75   0 13600 87043 -      ?        00:00:00 httpd
S   504 23657  8444  0  75   0 13604 87043 -      ?        00:00:00 httpd
S   504 24311  8444  0  75   0 13604 87043 -      ?        00:00:00 httpd
S   504 24790  8444  0  75   0 13604 87043 -      ?        00:00:00 httpd
S   504 25731  8444  0  75   0 13604 87043 -      ?        00:00:00 httpd
S   504 27087  8444  0  75   0 13604 87043 -      ?        00:00:00 httpd
S   504 24473  8444  0  75   0 13608 87043 -      ?        00:00:00 httpd
S   504 27976  8444  0  75   0 13612 87043 -      ?        00:00:00 httpd
S   504 28163  8444  0  75   0 13620 87043 -      ?        00:00:00 httpd
S   504 29266  8444  0  75   0 14204 87043 -      ?        00:00:00 httpd
S   504 17701  8444  0  75   0 14392 87043 -      ?        00:00:00 httpd
S   504 27881  8444  0  75   0 14408 87043 -      ?        00:00:00 httpd
S   504 26593  8444  0  75   0 14412 87043 -      ?        00:00:00 httpd
S   504 27072  8444  0  76   0 14428 87043 -      ?        00:00:00 httpd
S   504 17704  8444  0  75   0 15028 87043 -      ?        00:00:00 httpd
S   504 28674  8444  0  75   0 17076 87299 -      ?        00:00:00 httpd
S   504 23649  8444  0  75   0 17180 87299 -      ?        00:00:00 httpd
S   504 21484  8444  0  75   0 17232 87299 429493 ?        00:00:00 httpd
S   504 24034  8444  0  75   0 17240 87299 -      ?        00:00:00 httpd
S   504 24941  8444  0  75   0 17248 87299 -      ?        00:00:00 httpd
S   504 27058  8444  0  75   0 17256 87299 -      ?        00:00:00 httpd
S   504 24766  8444  0  75   0 17272 87299 -      ?        00:00:00 httpd
S   504 28333  8444  0  75   0 17284 87299 semtim ?        00:00:00 httpd
S   504 20565  8444  0  75   0 17296 87299 semtim ?        00:00:00 httpd
S   504 25462  8444  0  75   0 17296 87299 -      ?        00:00:00 httpd
S   504 28201  8444  0  75   0 17296 87299 -      ?        00:00:00 httpd
S   504 28202  8444  0  75   0 17316 87299 -      ?        00:00:00 httpd
S   504 27968  8444  0  75   0 17328 87299 -      ?        00:00:00 httpd
S   504 27973  8444  0  75   0 17328 87299 -      ?        00:00:00 httpd
S   504 24091  8444  0  75   0 17336 87299 429493 ?        00:00:00 httpd
S   504 28329  8444  0  75   0 17344 87299 -      ?        00:00:00 httpd
S   504 27885  8444  0  75   0 17352 87299 -      ?        00:00:00 httpd
S   504 21556  8444  0  75   0 17356 87299 semtim ?        00:00:00 httpd
S   504 24121  8444  0  75   0 17356 87299 429493 ?        00:00:00 httpd
S   504 24929  8444  0  75   0 17356 87299 -      ?        00:00:00 httpd
S   504 27918  8444  0  75   0 17356 87299 -      ?        00:00:00 httpd
S   504 24778  8444  0  75   0 17360 87299 -      ?        00:00:00 httpd
S   504 27075  8444  0  75   0 17360 87299 -      ?        00:00:00 httpd
S   504 20603  8444  0  75   0 17364 87299 -      ?        00:00:00 httpd
S   504 24031  8444  0  75   0 17364 87299 429493 ?        00:00:00 httpd
S   504 24791  8444  0  75   0 17364 87299 -      ?        00:00:00 httpd
S   504 26509  8444  0  75   0 17364 87299 -      ?        00:00:00 httpd
S   504 27249  8444  0  75   0 17364 87299 -      ?        00:00:00 httpd
S   504 24148  8444  0  75   0 17372 87299 -      ?        00:00:00 httpd
S   504 24777  8444  0  75   0 17372 87299 -      ?        00:00:00 httpd
S   504 24472  8444  0  75   0 17392 87299 semtim ?        00:00:00 httpd
S   504 24789  8444  0  75   0 17432 87299 429493 ?        00:00:00 httpd
S   504 27066  8444  0  75   0 17432 87299 429493 ?        00:00:00 httpd
S   504 27106  8444  0  75   0 17452 87299 -      ?        00:00:00 httpd
S   504 26508  8444  0  75   0 17472 87299 -      ?        00:00:00 httpd
S   504 24168  8444  0  75   0 17488 87299 -      ?        00:00:00 httpd
S   504 22355  8444  0  75   0 17492 87299 -      ?        00:00:00 httpd
S   504 23656  8444  0  75   0 17844 87555 -      ?        00:00:00 httpd
S   504 27088  8444  0  75   0 17888 87555 -      ?        00:00:00 httpd
S   504 28198  8444  0  75   0 17900 87555 -      ?        00:00:00 httpd
S   504 26694  8444  0  75   0 17960 87555 -      ?        00:00:00 httpd
S     0  8444     1  0  78   0 20276 87043 -      ?        00:00:00 httpd
S   504 27271  8444  0  75   0 28796 90883 -      ?        00:00:00 httpd
S   504 19949  8444  0  75   0 28888 90883 -      ?        00:00:00 httpd
S   504 25736  8444  0  75   0 29840 91395 -      ?        00:00:00 httpd
S   504 27086  8444  0  75   0 29848 91395 -      ?        00:00:00 httpd
S   504 26606  8444  0  75   0 29856 91395 429493 ?        00:00:00 httpd
S   504 24159  8444  0  75   0 29876 91395 -      ?        00:00:00 httpd
S   504 26821  8444  0  75   0 29876 91395 -      ?        00:00:00 httpd
S   504 26815  8444  0  75   0 29932 91395 -      ?        00:00:00 httpd
S   504 27418  8444  0  75   0 29940 91395 -      ?        00:00:00 httpd
S   504 27426  8444  0  75   0 29944 91395 semtim ?        00:00:00 httpd
S   504 27468  8444  0  75   0 29948 91395 -      ?        00:00:00 httpd
S   504 26587  8444  0  75   0 29952 91395 -      ?        00:00:00 httpd
S   504 24486  8444  0  75   0 29956 91395 semtim ?        00:00:00 httpd
S   504 24951  8444  0  75   0 29956 91395 429493 ?        00:00:00 httpd
S   504 24180  8444  0  75   0 29960 91395 -      ?        00:00:00 httpd
S   504 24305  8444  0  75   0 29972 91395 -      ?        00:00:00 httpd
S   504 24467  8444  0  75   0 30008 91395 -      ?        00:00:00 httpd
S   504 26507  8444  0  75   0 30032 91395 semtim ?        00:00:00 httpd
S   504 24460  8444  0  75   0 30056 91651 -      ?        00:00:00 httpd
S   504 23669  8444  0  75   0 30076 91395 -      ?        00:00:00 httpd
S   504 26580  8444  0  75   0 30088 91651 -      ?        00:00:00 httpd
S   504 23112  8444  0  75   0 30172 91395 -      ?        00:00:00 httpd
S   504 26607  8444  0  75   0 30192 91395 -      ?        00:00:00 httpd
S   504 24772  8444  0  75   0 30212 91395 -      ?        00:00:00 httpd
S   504 24942  8444  0  75   0 30216 91395 -      ?        00:00:00 httpd
S   504 24167  8444  0  75   0 30220 91395 -      ?        00:00:00 httpd
S   504 26478  8444  0  75   0 30228 91395 -      ?        00:00:00 httpd
S   504 24184  8444  0  75   0 30260 91395 429493 ?        00:00:00 httpd
S   504 27425  8444  0  75   0 30292 91395 -      ?        00:00:00 httpd
S   504 22348  8444  0  75   0 30388 91651 -      ?        00:00:00 httpd
S   504 26605  8444  0  75   0 30396 91651 -      ?        00:00:00 httpd
S   504 22678  8444  0  75   0 30420 91395 -      ?        00:00:00 httpd
S   504 24489  8444  0  75   0 30452 91395 153384 ?        00:00:00 httpd
S   504 24296  8444  0  75   0 30480 91395 -      ?        00:00:00 httpd
S   504 24095  8444  0  75   0 30600 91651 -      ?        00:00:00 httpd
S   504 23085  8444  0  75   0 30688 91651 -      ?        00:00:00 httpd
S   504 19586  8444  0  75   0 30768 91395 -      ?        00:00:00 httpd
S   504 24182  8444  0  75   0 30768 91395 -      ?        00:00:00 httpd
S   504 18511  8444  0  75   0 30820 91395 -      ?        00:00:00 httpd
S   504 26594  8444  0  75   0 30836 91395 -      ?        00:00:00 httpd
S   504 13358  8444  0  75   0 30856 91651 -      ?        00:00:00 httpd
S   504 17681  8444  0  75   0 30988 91395 -      ?        00:00:00 httpd
S   504 22336  8444  0  75   0 31016 91651 -      ?        00:00:00 httpd
S   504 15690  8444  0  75   0 31040 91395 -      ?        00:00:00 httpd
S   504 22718  8444  0  75   0 31072 91651 -      ?        00:00:00 httpd
S   504 19043  8444  0  75   0 31080 91395 -      ?        00:00:00 httpd
S   504 12815  8444  0  75   0 31108 91651 -      ?        00:00:00 httpd
S   504 23301  8444  0  75   0 31112 91395 -      ?        00:00:00 httpd
S   504 24183  8444  0  75   0 31164 91395 -      ?        00:00:00 httpd
S   504 22670  8444  0  75   0 31180 91395 -      ?        00:00:00 httpd
S   504 22327  8444  0  75   0 31216 91651 -      ?        00:00:00 httpd
S   504 21489  8444  0  75   0 31220 91395 -      ?        00:00:00 httpd
S   504 21474  8444  0  75   0 31284 91395 -      ?        00:00:00 httpd
S   504 21596  8444  0  75   0 31296 91651 -      ?        00:00:00 httpd
S   504 22690  8444  0  75   0 31448 91395 -      ?        00:00:00 httpd
S   504 26595  8444  0  75   0 31452 91651 429493 ?        00:00:00 httpd
S   504 20312  8444  0  75   0 31476 91651 429493 ?        00:00:00 httpd
S   504 24313  8444  0  75   0 31592 91397 -      ?        00:00:00 httpd
S   504 24179  8444  0  75   0 31696 91395 -      ?        00:00:00 httpd
S   504 22369  8444  0  76   0 31732 88329 -      ?        00:00:00 httpd
S   504 13373  8444  0  75   0 31768 91395 429493 ?        00:00:00 httpd
S   504 17667  8444  0  75   0 31960 91651 429493 ?        00:00:00 httpd
S   504 18517  8444  0  75   0 32012 91651 -      ?        00:00:00 httpd
S   504  7793  8444  0  75   0 32040 91651 -      ?        00:00:00 httpd
S   504 17658  8444  0  75   0 32116 91395 -      ?        00:00:00 httpd
S   504 27272  8444  0  75   0 32224 91395 -      ?        00:00:00 httpd
S   504 13901  8444  0  75   0 32784 91395 -      ?        00:00:00 httpd
S   504 15366  8444  0  75   0 33168 91651 -      ?        00:00:00 httpd
S   504 24577  8444  0  75   0 33256 88085 -      ?        00:00:00 httpd
S   504 14330  8444  0  75   0 34192 91651 -      ?        00:00:00 httpd
S   504 15155  8444  0  75   0 34296 91395 -      ?        00:00:00 httpd
S   504 16312  8444  0  75   0 34496 91395 -      ?        00:00:00 httpd
S   504 28194  8444  0  75   0 36996 88848 -      ?        00:00:00 httpd
S   504 24776  8444  0  75   0 43720 92169 429493 ?        00:00:00 httpd
S   504 20584  8444  0  75   0 44224 92169 -      ?        00:00:00 httpd
S   504 22331  8444  0  75   0 44636 91913 -      ?        00:00:00 httpd
S   504 24033  8444  0  75   0 45496 91664 -      ?        00:00:00 httpd
S   504 22375  8444  0  75   0 46320 91664 -      ?        00:00:00 httpd
S   504 22378  8444  0  75   0 50064 91664 -      ?        00:00:00 httpd
S   504 24481  8444  0  75   0 53836 93968 -      ?        00:00:00 httpd
S   504 22354  8444  0  75   0 62124 93962 -      ?        00:00:00 httpd

Questo cambierà ciò che mi consiglieresti?


Sempre utile menzionare quali altri plug-in in esecuzione, come sitemap xml, roba seo, scansione malware, post correlati, ecc., Possono uccidere il tuo server.
Wyck,

+1 a quello che ha detto @Wyck. Quasi tutti i problemi di prestazioni e memoria che vedo sono il risultato di alcuni plugin che si comportano male.
MikeSchinkel,

Puoi anche elencare le modifiche di Apache che hai provato e il contenuto del tuo file my.cnf e il tuo httpd.conf. Un problema comune con Apache è impostare le richieste massime e richieste massime per bambino su alte e non muoiono mai e consumano semplicemente ram.
Chris_O,

Come indicato da @Anu sotto, il numero massimo di clienti e MaxRequest per bambino sono probabilmente impostati su valori elevati. Prova a ridurre Max Client a 125 e MaxRequestPerChild a circa 500. Cambia anche le tue richieste MaxKeepAlive a circa 50 e
riduci

Risposte:


5

Souljacker,

Vorrei prima dare un'occhiata ai tuoi plugin. Le valutazioni a stelle per le recensioni non sono state aggiornate da oltre 3 anni e sembrano davvero pesanti sul db. Ho visto alcuni sql grezzi con alcuni JOIN INNER che sembrano fastidiosi.

Sul lato server è necessario implementare un po 'di cache degli oggetti. APC è lo standard defacto e ti darà i migliori risultati.

Dopo aver installato APC, passa a W3 Total Cache o al back-end della cache degli oggetti APC di Mark Jaquith per sfruttarne appieno.

Le tue impostazioni httpd.conf sembrano a posto. Dall'aspetto di my.cnf, non stai sfruttando la cache delle query MySQL, la memorizzazione nella cache dei thread o il controllo di qualsiasi dimensione del buffer.

Puoi utilizzare uno script di ottimizzazione per aiutarti con la configurazione di my.cnf. Mi piace usare mysqltuner e anche l' ottimizzazione del primer è molto buona.

Mysqltuner fornirà suggerimenti e fornirà alcune linee guida su cosa regolare in base all'utilizzo del database.

Sul mio server con RAM 12G le mie impostazioni sono simili a questa. (Solo un esempio non usare queste impostazioni !!!)

key_buffer              = 512M
max_allowed_packet      = 32M
thread_stack            = 1M
thread_cache_size   = 128M

myisam-recover         = BACKUP
max_connections        = 60
table_cache            = 5000
table_definition_cache = 1024
thread_concurrency     = 16

# * Query Cache Configuration

query_cache_type        = 1
query_cache_limit       = 4M
query_cache_size        = 48M
max_heap_table_size     = 512M
tmp_table_size          = 512M
join_buffer_size        = 3M
sort_buffer_size        = 8M
read_buffer_size        = 8M
read_rnd_buffer_size    = 8M
myisam_sort_buffer_size =16M


log_slow_queries        = /var/log/mysql/mysql-slow.log
long_query_time = 1

Come altri hanno già detto che eseguire Nginx ridurrà drasticamente il carico sul tuo server se sei in grado di accettare le configurazioni, ecc. Ho scritto un tutorial su come installare e configurare Apache con Nginx come proxy inverso

Spero che sia di aiuto.


wp-supercache ora supporta anche l'uso di APC come cache degli oggetti - tuttavia sia per w3 total cache che per wp-supercache ho riscontrato strani comportamenti con la cache degli oggetti, specialmente nel contesto degli utenti che hanno effettuato l'accesso. Non sono sicuro che si tratti di qualcosa sul mio sito, ma fai attenzione e testalo ampiamente!
anu,

inoltre, mentre mysqltuner (e anche l'installazione di mtop) è utile, ho riscontrato il maggiore aumento delle prestazioni verificando l'attivazione della registrazione delle query lenta e quindi l'utilizzo di EXPLAIN per capire perché determinate query erano lente.
anu,

Punti molto buoni. Ho dimenticato di menzionare i log delle query lente. Il sintonizzatore ti dirà di accenderlo se non lo usi.
Chris_O,

2

Dai un'occhiata qui: Suggerimenti sulle prestazioni per una vasta base di utenti : è un insieme di cose utili da guardare che vanno oltre Apache.

Quando si cerca di ottimizzare le prestazioni, è piuttosto importante esaminare l'intera infrastruttura per vedere dove si potrebbero avere problemi - ad esempio uno dei miei siti alla fine ho rintracciato un problema che inizialmente sembrava un problema di Apache (apache esaurendo la memoria a medio caricamento) a una query SQL lenta che è stata risolta aggiungendo un indice aggiuntivo alla tabella dei commenti.

Inoltre, installa APC o qualche altra cache del codice operativo PHP.

[Aggiornare]

È molto probabile che l'impostazione MaxClients sia troppo alta: se tutti e 200 i processi sono attivi e se hanno una media di circa 20 MB per processo, i tuoi 4 GB sono esauriti, senza tener conto di MySQL e di tutti gli altri processi. Ridurre l'impostazione MaxCients e continuare a indagare su dove si trova il problema reale.

Puoi verificare quanta memoria utilizza ogni processo Apache con questo:

ps -ylC httpd --sort:rss

(sostituisci apache2 per httpd se sei su Ubuntu)


vota per xcache invece di APC, ma rigorosamente versione 1.3.x +
petermolnar,

APC è la strada da percorrere. Batte xcache in tutti i miei test e alla fine sarà incluso con PHP.
Chris_O,

sì, dai benchmark che ho visto, la differenza tra APC e altri acceleratori del codice operativo è abbastanza minima, quindi la facilità di installazione e il fatto che APC stia per entrare a far parte della distribuzione PHP (con PHP6) contano molto di più per io, ma l'importante è installarne uno!
anu,

Guardando Plesk vedo SOLO Apache che usa eccessivamente la memoria. Tutto il resto del sistema utilizza una memoria piuttosto bassa.
Souljacker,

@souljacker nessuno sta suggerendo che MySQL stesso stia usando troppa memoria (è molto probabile che dovrai effettivamente aumentare la memoria disponibile). Ma se leggi quello che ho scritto, le query SQL lente possono essere una causa dei problemi di OOM di Apache, poiché i processi di Apache fanno la coda in attesa che MySQL risponda, e così vengono fatti girare più processi. Ciò non significa che sia il tuo problema: dovrai fare alcune indagini per capire dove si trova il problema.
anu,

0

Confronta Nginx e Apache e fai una scelta:

Sono appena passato da Apache a Nginx ed è circa 10 minuti di lavoro:

  1. scarica / installa Nginx (wget / yum install / apt-get / ...)
  2. cambia il file di configurazione di nginx in modo che punti alla tua directory web (vedi esempi http://kbeezie.com/view/nginx-configuration-examples/ )
  3. avvia nginx

fatto.

Sono anche andato a php-fpm nello stesso andare anche a circa 20 minuti di lavoro:

  1. scarica php
  2. configurare con le librerie necessarie (ad es. suhosin) (o modificare il codice c con i propri messaggi scherzo) (ricordarsi di eliminare le estensioni specifiche di apache e ricordare di includere zlib per l'installazione / decompressione dei plugin wp dall'interno di wp)
  3. configura / crea php
  4. cambia il file di configurazione di nginx per includere le chiamate php-fpm
  5. avvia php-fpm e riavvia nginx

fatto

(aggiungendo i file di avvio /etc/init.d dove necessario)

Non ho eseguito i test delle prestazioni da solo, seguo ciecamente il "resto di loro"

Fuori portata per questa risposta: sto anche pianificando di abbandonare MySQL e usare invece MariaDB (GPL).


Potresti anche ottenere un Apache leggero solo con una corretta configurazione. Non fraintendetemi, Nginx o qualsiasi altro server web leggero come lighthttpd sono fantastici. Il mio consiglio è di usare Apache per contenuti dinamici e un Nginx / lighthttpd per contenuti statici.
rofflox,

il migliore sarebbe se WordPress venisse riscritto in C servlet grin Per dinamico / statico: sono abbagliato dai 1000 blogposts al giorno sulle differenze e voglio solo mantenere 1 server web, più facile.
edelwater,

Concordo con te su questo. Mantenere un server web è ancora più facile di due. Ma invece di eliminare Apache e installare un nuovo server web solo perché è "più veloce" nella configurazione predefinita, non è solo la risposta.
rofflox,

@Roman Wünsche forse potresti condividere alcuni suggerimenti su come ottenere una configurazione leggera di Apache che supererà nginx?
anu,

@Roman Wünsche È esattamente quello che sto cercando di fare, ma non ha ancora funzionato
Souljacker

0

Lavorare con le configurazioni prefork e Worker è una cosa complicata, alterare alcuni valori aiuterà sicuramente ad aumentare le prestazioni e ridurre l'utilizzo della RAM, inoltre ricorda che apache riserva un po 'di RAM, ciò non significa che stai esaurendo la RAM. Consulta questo articolo per i migliori consigli di ottimizzazione.


1
Link solo le risposte sono considerate di scarsa qualità. Utilizzali solo per provare che le tue dichiarazioni sono supportate da qualcun altro. Evocali nella tua risposta.
Kaiser,
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.