В настоящее время у меня есть выделенный сервер, с которого я предоставляю общий хостинг для некоторых моих клиентов.
Характеристики сервера
- Двухъядерный процессор AMD Athlon (tm) 64 X2 4000+
- 4 ГБ DDR RAM
- 1x Seagate 1000 ГБ
И я запускаю Apache 2.2.24 на 64-битной ОС CentOS 6.0.
В моей панели управления Directadmin я получал уведомления о том, что моя нагрузка слишком высока (иногда она превышает 100), и с момента установки htop я заметил, что в основном apache (httpd) вызывает пики процессора. Эти скачки продолжаются пару минут, в результате чего загрузка процессора достигает +90%. Загрузка памяти соответствует использованию только 25%.
Я никогда раньше не оптимизировал и не настраивал сервер Apache, и поэтому мне очень нужен совет. Какие настройки мне следует изменить, чтобы предотвратить / минимизировать загрузку процессора?
Заранее спасибо!
Хорошо, три ключевых момента, прежде чем я действительно смогу ответить на ваш вопрос:
Во-первых, "CPU% Busy" - это хреновая метрика. Игнорируй это.
Если это значение меньше 100%, ваш сервер под-utilized (процессор простаивает, ничего не делает).
Во-вторых, аналогично, «Средняя загрузка» - не лучший показатель (хотя он лучше, чем «CPU% Занят»).
Средняя нагрузка <= количество ядер на сервере - хорошее эмпирическое правило, но если средняя нагрузка составляет 10000, а система работает хорошо, какое вам дело?
В-третьих, DirectAdmin, cPanel и им подобные ужасны. Они как будто оставляют тренировочные колеса на вашем велосипеде навсегда: вы никогда не научитесь ездить, если не снимете их.
Вы, скорее всего, не сможете действительно оптимизируйте вашу систему при использовании DirectAdmin или любой другой «панели управления» - начните планировать избавление от нее (или, если вы не можете, по крайней мере, отключите его неприятные предупреждения и внедрите правильное программное обеспечение для мониторинга - то, что предупреждает производительность а не «Ой, сервер выглядит немного занятым»).
Итог: если ваша система работает достаточно хорошо, чтобы удовлетворить ваши потребности, не связывайтесь с ней.
Если это не работает хорошо (или вы все равно хотите испортить это) прочтите документацию, на которую вас указал Лотар и убедитесь, что вы понять что делает каждый параметр, который вы меняете.
(Типа кулинарной книги по системному администрированию карго-культа, которую вы связали в статье "Linux Stuffs", которая увековечивает их предлагаемые значения, ошибочна: большинство советов в целом хороши, но вам нужно прочитать Проект Apache документацию для каждого из этих параметров, полностью понять, что они делают, и определить правильное значение для вашей среды, иначе вы на самом деле не системный администратор, ты просто нажимаешь кнопки.)
Вам также следует обратиться к этот вопрос о сбое сервера при планировании емкости для веб-сайтов для некоторых общих рекомендаций - помните: единственный способ узнать, как машина будет работать под нагрузкой, - это протестировать ее.