Задача В связи с большим количеством соединений с WEB сервером Apache встала проблема нехватки системных ресурсов на сервере. jordan france nike Для дальнейшей эффективной работы сервера без дополнительных затрат на модернизацию аппаратной составляющей, встала задача по оптимизации использования существующих системных ресурсов. Для выполнения поставленной задачи было проведено тестирование модели front end/back end системы при которой в качестве front end выступает легкий web сервер nginx, а в качестве back end выступал все тот же apache. nike air presto soldes Преимущества подобной схемы можно понять на небольшом примере. Представьте себе, что к вашему web серверу apache необходимо обслужить порядка 1000 запросов одновременно, причем многие из этих клиентов подключены к медленным каналам связи. В случае использования apache мы получим 1000 процессов httpd на каждый из которых будет выделена оперативная память, и эта память не освободится до тех пор, пока клиент не получит запрошенный контент (в идеальном варианте конечно). В случае схемы с применением front end/back end сервера получим значительную экономию системных ресурсов за счет того, что после того как пришел запрос клиента, nginx передает запрос apache и быстро получает ответ. В итоге apache после того как отдал ответ nginx освобождает память, далее с клиентом взаимодействует web сервер nginx, который как раз и написан для раздачи статического контента, большому количеству клиентов, при незначительном потреблении системных ресурсов. Установка Nginx Red Hat Enterprise Linux 4 / CentOS 4 Для установки Nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов EPEL для этого выполните:
Затем установите Nginx выполнив:
Red Hat Enterprise Linux 5 / CentOS 5 Для установки Nginx в этих операционных системах вам необходимо подключить дополнительный репозиторий пакетов EPEL для этого выполните:
Затем установите Nginx выполнив:
ASPLinux Server 5 Nginx присутствует в стандартной поставке дистрибутива, поэтому для установки просто выполните:
Fedora Nginx присутствует в стандартном репозитории дистрибутива, поэтому для установки просто выполните:
Установка Apache Для установки apache выполните :
Установка mod_rpaf Данный модуль для apache необходим для работы связки nginx — front-end/apache — back-end. chaussures timberland air max 1 pas cher nike huarache Необходимость в данном модуле возникает по следующей причине: запросы к apache приходят с ip адреса на котором работает nginx (в простейшем случае это тот же самый адрес на котором работает apache), соответственно в журнальных файлах apache будет фигурировать только ip nginx сервера, что не очень хорошо. Также без использования данного модуля начнутся проблемы со скриптами в которых используется ip адрес посетителя и перестанет правильно работать механизм ограничения доступа по ip адресам с помощью .htaccess. nike free run oakley garage rock Домашняя страница модуля http://stderr.net/apache/rpaf/download/ . nike roshe run Был собран srpm пакет данного модуля для того, чтобы пользователи Red Hat based дистрибутивов могли легко собрать готовый rpm пакет данного модуля для своей системы. adidas hamburg femme Для сборки из srpm пакета вам необходимо выполнить следующие шаги:
После сборки rpm пакета установите его с помощью команды:
Настройка Nginx Ниже приведен конфигурационный файл nginx для работы в качестве front-end сервера. Подразумевается, что nginx будет работать на всех интерфейсах на 80 порту, а apache будет работать на интерфейсе 127.0.0.1 и порту 8080. nike air max 1 homme pas cher Сохраните данный конфигурационный файл в каталоге /etc/nginx/ с именем nginx.conf
Настройка Apache В файле конфигурации Apache /etc/httpd/conf/httpd.conf найдите строку Listen :80 и замените ее строкой Listen 127.0.0.1:8080 Настройка mod_rpaf Добавьте модуль mod_praf в файл конфигурации Apache для этого в файл /etc/httpd/conf/httpd.conf добавьте следующую строку:
Затем в этот же файл добавьте строки
конечно вместо 192.168.0.1 необходимо поставить ваш IP адрес. Тестирование производительности Вышеописанная схема была успешно протестирована на сервере на котором было 150 сайтов. Каждый сайт был описан с помощью директивы VirtualHost. После внедрения схемы с участием nginx нагрузка на сервер существенно сократилась. chaussures nike air max Выводы Как мы видим web сервер nginx позволил нам существенно снизить нагрузку на систему без дополнительных затрат на модернизацию сервера т.е. задачу поставленную в начале данной статьи мы выполнили.