Полная настройка сервера для сайтов

Некоторое время назад у меня появился свой сервер (VPS). И его надо настраивать (поэтому я не очень-то горячо люблю VPS и скорее предпочту обычный shared-хостинг). Пока весь интернет завален советами о том, какую очередную свистелку установить, чтобы уж теперь-то ваш сайт действительно заработал быстро, а сервер мог выдержать 1000000 человек в час, есть некоторые проблемы, о которых мало кто говорит, но которые просаживают производительность. Поэтому я решил написать пост с собранием ссылок, по которым надо пройтись для настройки своего сервера. Заметка в духе наброска и больше для себя, поэтому если есть какие-то дополнения, буду рад услышать.

Автозапуск

  1. Удаляем с автозапуска Send Mail. Эта штука постоянно работала в фоне, потребляя драгоценную ОЗУ и создавая многочисленные логи в папке /etc/log/, которых накопилось на пару сотен мегабайт.

Apache

  1. Выключаем логирование в Apache (или). Файл /etc/log/apache2/other_vhosts_access.log побил все рекорды по размерам. В нем содержались логи от всех сайтов, размещенных на сервере и 1 файл занимал порядка 400 мб на диске.
  2. Первичная настройка Apache и MySQL на сервере с 512 мб памяти.
  3. Настройка модулей, необходимых под WordPress. Во всех подобных статьях в интернете список модулей существенно различается. Я остановился на таком. Например, на narga.net список модулей сильно короче. Где-либо в кодексе WP найти список необходимых модулей не удалось.

MySQL

  1. Выключить Query Log (убийца производительности).
  2. Ограничить максимальное кол-во подключений до того, что устанавливается в Apache.
  3. Улучшение и подгон настроек с помощью MySQL Tuner.
  4. Анализ статистики запросов и просмотр рекомендаций в PHPMyAdmin.
  5. Query cache size, limit и т. п.
  6. Правильно изменяем innodb_log_file_size (при неправильном изменении сервер перестанет запускаться).
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s