Веб-система
Материал из DiPHOST.Ru wiki system
Schors (Обсуждение | вклад) |
Schors (Обсуждение | вклад) |
||
Строка 7: | Строка 7: | ||
=== Внешний уровень. nginx === | === Внешний уровень. nginx === | ||
- | Для внешнего уровня веб-системы выбран веб-сервер [ | + | Для внешнего уровня веб-системы выбран веб-сервер [http://nginx.ru nginx]. Веб-сервер nginx очень производительный, не требовательный к ресурсам и позволяет создавать гибкие конфигурации, хотя и не обладает возможностью исполнять скрипты на php, perl, python и прочих языках. |
На внешнем уровне выполняются следующие задачи: | На внешнем уровне выполняются следующие задачи: | ||
Строка 16: | Строка 16: | ||
* передача пришедших запросов на внутренний уровень без кеширования (т.е. передаются абсолютно все запросы) по протоколу HTTP; | * передача пришедших запросов на внутренний уровень без кеширования (т.е. передаются абсолютно все запросы) по протоколу HTTP; | ||
* чтение ответов и передача их без кеширования (т.е. всегда отдаётся ответ внутреннего уровня, не сохраняется никаких копий) в сеть. | * чтение ответов и передача их без кеширования (т.е. всегда отдаётся ответ внутреннего уровня, не сохраняется никаких копий) в сеть. | ||
+ | |||
+ | Для каждого сайта создаётся отдельная конфигурация в nginx, что позволяет направлять запросы из сети к выделенному вплоть до сайта веб-серверу внутреннего уровня. Также предусмотрена возможность применять уникальные конфигурации для каждого сайта по запросу в службу поддержки. | ||
=== Внутренний уровень. apache === | === Внутренний уровень. apache === |
Версия 14:06, 25 апреля 2012
Веб-система хостинга состоит из двухуровневой системы веб-серверов. Внешний уровень принимает запросы из сети, проверяет на синтаксические ошибки протокола, выбирает на какой веб-сервер внутреннего уровня переслать запрос, пересылает его, читает ответ и отдаёт его в сеть. Внешний уровень всегда очень быстрый, производительный, но и простой. Внутренний уровень веб-системы обслуживает сайты, исполняет скрипты сайтов. Такая схема позволяет разгрузить внутренний уровень за счёт его независимости от скорости сегментов сети Интернет - сетевой частью занимается лёгкий внешний уровень. Также, такая схема позволяет гибко управлять внутренним уровнем системы, распределяя запросы извне к веб-серверам внутреннего уровня с различной, иногда несовместимой между собой, функциональностью.
Внешний уровень. nginx
Для внешнего уровня веб-системы выбран веб-сервер nginx. Веб-сервер nginx очень производительный, не требовательный к ресурсам и позволяет создавать гибкие конфигурации, хотя и не обладает возможностью исполнять скрипты на php, perl, python и прочих языках.
На внешнем уровне выполняются следующие задачи:
- приём запросов по протоколу HTTP из сети;
- приём запросов по протоколу HTTPS из сети, обеспечение установки SSL-соединения;
- борьба с DDoS, обработка аварийных ситуаций;
- выбор сервера внутреннего уровня;
- передача пришедших запросов на внутренний уровень без кеширования (т.е. передаются абсолютно все запросы) по протоколу HTTP;
- чтение ответов и передача их без кеширования (т.е. всегда отдаётся ответ внутреннего уровня, не сохраняется никаких копий) в сеть.
Для каждого сайта создаётся отдельная конфигурация в nginx, что позволяет направлять запросы из сети к выделенному вплоть до сайта веб-серверу внутреннего уровня. Также предусмотрена возможность применять уникальные конфигурации для каждого сайта по запросу в службу поддержки.