Оптимізуйте apache для використання WP


10

Привітання,

У мене є WP-сайт із переглядом сторінок понад 150 кб / день.

Він працює на процесорі Intel Core i5 760 при 2,80 ГГц, з Centos і 4 ГБ оперативної пам’яті.

Проблема полягає в тому, що WP споживає занадто багато оперативної пам’яті, і через деякий час сервіс перевантажується, а оперативна пам’ять закінчується. Я спробував багато твіків Apache, але, здається, нічого не виходить. Після того як я перезавантажую Apache, сайт буде працювати безперебійно, але через годину-дві він знову перевантажиться.

У когось із вас, хлопці, є якась порада, яка допоможе мені?

До речі, я використовую кеш-пам'ять WP-Super.

ОНОВЛЕННЯ: Додаткова інформація

Ось мій список плагінів:

  • Акісмет
  • Контактна форма 7
  • Дзеркало домену
  • Швидше вставлення зображення
  • Інтенсивний дебат
  • Рольовий менеджер
  • SexyBookmarks
  • Розумний Youtube
  • Рейтинг зірок для відгуків
  • Ескіз до уривків
  • WP-опитування
  • WP-SWFOоб'єкт
  • Супер кеш WP

Що стосується tweeks, я спробував деякі поради тут

Мої налаштування:

 <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

Також ось мій 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

ОНОВЛЕННЯ

Ось моє поточне використання пам’яті

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

Це змінить те, що ти мені порадив би?


Завжди добре згадати, які інші плагіни вашого запущеного файлу, такі як XML-карти сайту, seo-матеріали, сканування зловмисного програмного забезпечення, пов’язані публікації тощо, можуть вбити ваш сервер.
Wyck

+1 до того, що сказав @Wyck. Майже всі проблеми з продуктивністю та пам'яттю, які я бачу, є результатом плагіну, який не поводиться.
MikeSchinkel

Чи можете ви також перелічити налаштування Apache, які ви спробували, та вміст файлу my.cnf та httpd.conf. Поширеною проблемою Apache є встановлення максимальних запитів і максимальних запитів на дитину до високих, і вони ніколи не відмирають і просто споживають барана.
Chris_O

Як @Anu сказав нижче, максимум клієнтів і MaxRequest на дитину, ймовірно, встановлені на високих. Спробуйте знизити максимум клієнтів до 125, а MaxRequestPerChild - приблизно до 500. Також змініть запити MaxKeepAlive приблизно на 50 та зменшіть час очікування на 15 або 20.
Chris_O

Відповіді:


5

Souljacker,

Я спершу погляну на ваші плагіни. Зірковий рейтинг для відгуків не оновлювався більше 3-х років і виглядає як справжній важкий на небі. Я побачив сирий sql з деякими ВНУТРІШНІМИ СПОЛУЧЕННЯМИ, які виглядають проблемними.

На стороні сервера слід реалізувати кешування об'єктів. APC є стандартом defacto і дасть найкращі результати.

Як тільки ви встановите APC, переключитесь на кеш-пам'ять W3 Total кеш або на маркер Jaquith APC Object Cache Backend, щоб повністю використати його.

Ваші налаштування httpd.conf виглядають чудово. З огляду на ваш my.cnf, ви не користуєтесь кешуванням запитів MySQL, кешуванням потоків або керуванням будь-яким розміром буфера.

Ви можете використовувати сценарій настройки, щоб допомогти вам у налаштуваннях my.cnf. Мені подобається використовувати mysqltuner, і тюнінг-праймер теж дуже хороший.

Mysqltuner видасть пропозиції та дасть вам декілька вказівок щодо налаштування залежно від використання вашої бази даних.

На моєму сервері з 12G Ram мої налаштування виглядають приблизно так. (Просто приклад не використовує ці налаштування !!!)

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

Як уже згадувалося працює Nginx буде різко знизити навантаження на сервер , якщо ваш до прийняття на конфігурації і т.д. Я написав підручник про те, як встановити та налаштувати Apache з Nginx в якості зворотного проксі - сервера

Сподіваюсь, це допомагає.


wp-supercache тепер також підтримує використання APC в якості об'єкта кешу - однак як для загального кешу w3, так і для wp-supercache я бачив дещо дивну поведінку з кешуванням об'єктів, особливо в контексті входу в систему користувачів. Не впевнений, чи це щось про моєму сайті, але будьте уважні та перевіряйте його!
ану

Крім того, хоча mysqltuner (а також установка mtop) є корисним, я знайшов найбільше підвищення продуктивності, увімкнувши повільний журнал запитів, а потім за допомогою EXPLAIN зрозуміти, чому деякі запити повільні.
ану

Дуже хороші бали. Я забув згадати журнали повільних запитів. Налаштування грунтовки підкаже, як увімкнути її, якщо ви її не використовуєте.
Chris_O

2

Погляньте тут: поради щодо ефективності для великої бази користувачів - це корисний набір речей, які слід виходити за рамки лише Apache.

Для оптимізації продуктивності досить важливо переглянути всю інфраструктуру, щоб побачити, де у вас можуть виникнути проблеми - наприклад, на одному з моїх сайтів я врешті-решт виявив проблему, яка спочатку була схожа на проблему Apache (у апаші не вистачає пам'яті в середовищі load) до повільного запиту SQL, який було виправлено шляхом додавання додаткового індексу до таблиці коментарів.

Також встановіть APC або інший кеш-оп-код PHP.

[Оновлення]

Цілком ймовірно, що ваш параметр MaxClients може бути занадто високим - якщо всі 200 процесів активні і якщо вони в середньому становлять близько 20 МБ за процес, то ваш витрачений 4 Гб, не враховуючи MySQL та всі інші процеси. Зменшіть параметр MaxCients та продовжте розслідування, де знаходиться ваша реальна проблема.

Ви можете перевірити, скільки пам'яті використовує кожен процес Apache для цього:

ps -ylC httpd --sort:rss

(замініть apache2 на httpd, якщо ви перебуваєте на Ubuntu)


голосувати за xcache замість APC, але суворо версія 1.3.x +
petermolnar

APC - це шлях. Перемагає xcache у всіх моїх тестах, а згодом він буде включений до PHP.
Chris_O

Так, серед оцінок, які я бачив, різниця між APC та іншими прискорювачами оп-коду є досить мінімальною, тому простота установки та той факт, що APC ось-ось стане частиною дистрибутива PHP (з PHP6), розраховують на більшу мені, але важливо - встановити одну з них!
ану

Дивлячись на plesk, я бачу ТОЛЬКО Apache os надмірне використання пам'яті. Вся решта системи використовує досить низьку пам'ять.
Souljacker

@souljacker ніхто не припускає, що сам MySQL використовує занадто багато пам'яті (цілком ймовірно, що вам потрібно буде збільшити доступну йому пам'ять). Але якщо ви читаєте те, що я написав, повільні запити SQL можуть бути причиною проблем Apache OOM, оскільки Apache обробляє чергу, очікуючи на відповідь MySQL, і так більше процесів запускається. Це не означає, що це ваша проблема - вам потрібно буде провести певне розслідування, щоб з’ясувати, де проблема.
ану

0

Порівняйте Nginx та Apache та зробіть вибір:

Я щойно перейшов з Apache на Nginx, і це працює приблизно за 10 хвилин:

  1. завантажити / встановити Nginx (wget / yum install / apt-get / ...)
  2. змінити файл конфігурації nginx, щоб вказати на ваш веб-каталог (див. приклади http://kbeezie.com/view/nginx-configuration-examples/ )
  3. запустити nginx

зроблено.

Я також поїхав у php-fpm, в той же час також працював близько 20 хвилин:

  1. завантажити php
  2. конфігуруйте з необхідними libs (наприклад, suhosin) (або змініть код c своїми власними повідомленнями про шахрайство) (не забудьте скинути специфічні розширення apache і не забудьте включити zlib для встановлення / розпакування плагінів wp зсередини wp)
  3. налаштувати / зробити php
  4. змінити конфігураційний файл nginx, щоб включити виклики php-fpm
  5. запустіть php-fpm та перезавантажте nginx

зроблено

(додавання файлів запуску /etc/init.d, де потрібно)

Я ще не проводив тести на працездатність, просто сліпо слідую за "рештою з них"

Неможливо для цієї відповіді: Я також планую скинути MySQL та використовувати MariaDB (GPL) замість цього.


Ви також можете отримати легкий Apache лише за допомогою належної конфігурації. Не зрозумійте мене неправильно, Nginx або будь-який інший легкий веб-сервер на зразок lighthttpd - це чудово. Моя порада - використовувати Apache для динамічного контенту та Nginx / lighthttpd для статичного вмісту.
rofflox

найкраще було б, якби WordPress був би переписаний в усмішку сервлетів C. Для динамічного / статичного: Мене засліплює 1000 блогпостів на день на відмінності, і я просто хочу підтримувати 1 веб-сервер, простіше.
edelwater

Я згоден з вами тут. Підтримувати один веб-сервер все ще простіше, ніж два. Але замість того, щоб зруйнувати Apache та встановити новий веб-сервер лише тому, що він "швидший" у конфігурації за замовчуванням, це не лише відповідь.
rofflox

@Roman Wünsche, можливо, ви могли б поділитися порадами, як отримати легку конфігурацію apache, яка буде перевершувати nginx?
ану

@Roman Wünsche Це саме те, що я намагаюся зробити, але все ще не
вийшло

0

Робота з конфігураціями prefork та Worker - справа хитра, зміна деяких значень, безумовно, допоможе підвищити продуктивність та зменшити використання оперативної пам’яті, також пам’ятайте, що apache резервує деяку кількість оперативної пам’яті, це не означає, що у вас не вистачає оперативної пам’яті. Перегляньте цю статтю, щоб отримати найкращі поради щодо оптимізації.


1
Відповіді лише на посилання вважаються неякісними. Будь ласка, використовуйте їх лише для того, щоб довести, що ваші твердження підкріплені кимось іншим. Викликайте їх у своїй відповіді.
кайзер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.