Веб-система
Материал из DiPHOST.Ru wiki system
Веб-система хостинга состоит из двухуровневой системы веб-серверов. Внешний уровень принимает запросы из сети, проверяет на синтаксические ошибки протокола, выбирает на какой веб-сервер внутреннего уровня переслать запрос, пересылает его, читает ответ и отдаёт его в сеть. Внешний уровень всегда очень быстрый, производительный, но и простой. Внутренний уровень веб-системы обслуживает сайты, исполняет скрипты сайтов. Такая схема позволяет разгрузить внутренний уровень за счёт его независимости от скорости сегментов сети Интернет - сетевой частью занимается лёгкий внешний уровень. Также, такая схема позволяет гибко управлять внутренним уровнем системы, распределяя запросы извне к веб-серверам внутреннего уровня с различной, иногда несовместимой между собой, функциональностью.
Внешний уровень. nginx
Для внешнего уровня веб-системы выбран веб-сервер [nginx nginx.ru]. Веб-сервер nginx очень производительный, не требовательный к ресурсам и позволяет создавать гибкие конфигурации, хотя и не обладает возможностью исполнять скрипты на php, perl, python и прочих языках.
На внешнем уровне выполняются следующие задачи:
- приём запросов по протоколу HTTP из сети;
- приём запросов по протоколу HTTPS из сети, обеспечение установки SSL-соединения;
- борьба с DDoS, обработка аварийных ситуаций;
- выбор сервера внутреннего уровня;
- передача пришедших запросов на внутренний уровень без кеширования (т.е. передаются абсолютно все запросы) по протоколу HTTP;
- чтение ответов и передача их без кеширования (т.е. всегда отдаётся ответ внутреннего уровня, не сохраняется никаких копий) в сеть.