Logo Background

Реклама

Настройка и оптимизация vps на CentOS

  • Автор Toxicomaniac 9 комментариев9 комментариев Comments
    Последнее обновление: 08.06.2010

    Многие говорят, что wordpress очень тяжёлый движок и использовать его под нч доры просто роскошь. Я тоже так подумал, когда мой виртуальный сервер лёг всего лишь на 18 дорах, причём совершенно без трафа. Думал временно, перезагружал apache и mysql в надежде на запуск, но сервер ложился снова и снова…. Как оказалось, дело было не в wordpress, а в самом сервере. Я оптимизировал сервер, причём без каких-либо трудностей, в Kloxo это легко. Теперь спокойно держу на одном виртуальном сервере 800 дорвеев на wordpress 8)

     1. Сокращение использования памяти MySQL

     2. Устанавливаем лёгкую версию веб-сервера – Lighttpd

     3. Заменяем bind на djbdns

     4. Вывoды:

    1. Сокращение использования памяти MySQL

    По умолчанию MySQL использует много оперативной памяти, поэтому необходимо ограничить MySQL в потреблении ресурсов, тем более если используется дешёвый vps.
    Проще всего отредактировать уже существующий файл конфигурации my.cnf, обычно файл my.cnf находится здесь /etc/my.cnf, чтобы его отредактировать воспользуемся встроенным редактором Vi. Им пользоваться одно удовольствие не очень удобно, потому что он – это просто какая-то запутанная залупа имеет сложный и не понятный интерфейс, но привыкнуть можно, причём выполнять некоторые операции в Vi можно намного быстрее, чем в привычном редакторе.
    Открываем SHH-клиент putty и вводим команды:

    • cd /etc //переходим в папку с файлом my.cnf
    • vi my.cnf //открываем файл
      У Vi несколько режимов работы, причём в основном режиме vi воспринимает каждое нажатие на клавишу, как команду.
    • нажимаем на клавишу i //переходим в режим ввода
      <Insert> – должно появиться внизу окна
    • открываем файл my-lxadmin-centos.txt в блокноте и копируем всё содержимое файла ctrl+C и вставляем одним нажатием правой кнопки мыши.
    •   скачать файл кофигурации MySql (my-lxadmin-centos.txt) (501 bytes, 1 246 hits)

    • нажимаем <ESC>, чтобы перейти в обычный режим.
    • вводим Shift+ZZ чтобы сохранить файл и выйти.
    • /etc/init.d/mysqld restart //перезапускаем MySQL

    Теперь MySQL использует около 25 мб оперативной памяти, особенно важно для kloxo (по умолчанию в kloxo MySQL потребляет целых 125 мб оперативки)

    2. Устанавливаем лёгкую версию веб-сервера – Lighttpd

    • yum install lighttpd //устанавливаем Lighttpd
      ИЛИ
    • yum install -y lighttpd lighttpd-fastcgi php-cli //устанавливаем Lighttpd с PHP
    • chkconfig lighttpd on //включаем Lighttpd в автозагрузку
    • /etc/init.d/lighttpd start //запускаем Lighttpd предварительно не забыв отключить веб-сервер, уже установленный и запущенный. Иначе порт 80 будет занят.

    Посмотреть настройки можно здесь.

    В kloxo всё очень просто: в Servers выбираем сервер, переходим в Switch Program и меняем apache на Lighttpd.

    3. Заменяем bind на djbdns

    В kloxo заменил в Switch Program bind на djbdns.
    Более подробно о настройках и установке можно узнать здесь.

    4. Вывoды:

    • На моём vps потребление оперативной памяти снизилось с 320 до 50 мб
    • Существует много альтернативных вариантов программного обеспечения сервера, гораздо менее требовательного к ресурсам, но ничем не уступающего, например apache можно заменить на:
    • Cherokee
    • Hiawatha
    • Lighttpd
    • Nginx
    • thttpd

    P.S. Редактировать файлы конфигурации можно из панели управления сервера (например kloxo), через менеджер файлов =)

    P.S.#2 Настройки mysql предназначены для очень слабых vps, с оперативной памятью от 64 mb, для более мощных серверов следует увеличить параметры.

    Внимание!!! Обнаружен баг!!! При создании большого количества субдоменнов (да и доменов) по какой-то причине не у всех субдоменов правильно прописываются права на файлы, из-за чего Lighttpd останавливается.
    (mod_accesslog.c.537) opening access-log failed: Permission denied /home/httpd/some-domaine.com/stats/some-domaine.com-custom_log
    (server.c.897) Configuration of plugins failed. Going down.
    Можно пофиксить изменением этих самых прав. Если доменов/субдоменов много, то можно это сделать массово с помощью SHH используя команду chmod:

    • chmod 770 file_1 file_2 … file_n

    Может зависнуть сама панель, для перезагрузки используется команда:

    • /script/restart
    TagsTags: , , , ,

Реклама

  1. #1 Tremo
    25.02.2012 11:35

    Ну вот установили LigHTTPD, а чпу(.htaccess) не работает. Как быть? Написали бы лучше как Apache правильно оптимизировать!

    Ответить на постОтветить на пост
  2. #2 Toxicomaniac
    18.03.2012 02:36

    Apache оптимизировать можно, но малоэффективно, лучше бодрый VPS взять. Ну или ngnix поднять как вариант.
    Я же использовал лайти конкретно для вордпресс и статики, чтобы VPS не ложился при большом количестве сайтов.

    Ответить на постОтветить на пост
  3. #3 Илья
    31.03.2012 12:53

    А какие настройки порекомендуете для сервера с 256мб ОЗУ?
    И где на эту тему грамотно написано? (так же понятно, как у Вас:) )

    Ответить на постОтветить на пост
  4. #4 Toxicomaniac
    31.03.2012 19:35

    Надо знать что будет на сервере, и есть ли там ещё сверху к этим 256мб какой-нибудь burstable RAM.
    Этот пост под вордпресс, чтобы не ложился сервак при большом количестве сайтов на вордпресс, поэтому у меня нихера не грамотно, дополню пост как будет время. Не знаю где искать инфу, реально некогда этим заниматься.

    Ответить на постОтветить на пост
  5. #5 Илья
    02.04.2012 08:25

    Спасибо. Инфу нашел предварительно подумав и погуглив что-то вроде my.cnf config и tuning mysql

    Ответить на постОтветить на пост
  6. #6 Александр
    05.04.2012 12:23

    апача не стал менять, а MySQL оптимизировал. Результат: кушало 275 RAM –>> сейчас кушает 159. Всего 1024.
    сейчас у меня 30 сайтов, половина на WP половина на Joomla. Всего у меня их 150, хочу все перенести на VPS. Выдержит ли он такую нагрузку? Что будет с сервером когда потребление оперативы превысит лимит? Упадет?

    Ответить на постОтветить на пост
  7. #7 Toxicomaniac
    06.04.2012 19:58

    Упадёт. Не 100% инфа, у меня ложился уже на 15-20 WP по-моему из-за апача, точно не могу сказать, давно было, может мускл виноват был, хотя под lighttpd не ложится и при 800 WP (трафа мало было и всего по 300-400 страниц каждый). От нескольких WP по 10000 страниц (мускл ложится). От количества трафа зависит, ещё от нагрузки плагинов, от размеров отдельных таблиц мускл…

    Ответить на постОтветить на пост
  8. #8 Александр
    12.04.2012 16:02

    100 сайтов перенес для пробы, нагрузка в среднем 30% на RAM, хотя бывает скачет до 50-60%. Движки оптимизированы – кэш, минимум плагинов. Посещалка в среднем 20-30 чел/хост. Полёт нормальный :)
    Не могу разобраться с правами доступа к файлам и папкам, тот же WP выдает ошибки при установке, приходится права руками менять- что очень отвратительно.
    Как Вы с этим боролись? Или не было таких проблем?

    Ответить на постОтветить на пост
  9. #9 Toxicomaniac
    16.04.2012 09:19

    Проблемы с правами на файлы есть, правда при установке WP не заметил таких проблем и вообще давно не сталкивался с такими проблемами, да и для меня не критично, так как использую одну копию WP на сотни сайтов, а так меняю вручную.

    Ответить на постОтветить на пост
Оставить комментарий


* Поля, отмеченные звёздочкой, обязательны для заполнения.

 

Keywords: