mobile menu

Круглосуточная поддержка

8-800-555-78-23

Консультант онлайн
Любимых клиентов уже:  122547

Персональный веб-сервер

В рамках услуги «Персональный веб-сервер» сайты, размещенные на аккаунте, могут быть запущены на собственном экземпляре веб-сервера Apache, процессы которого всегда готовы к обработке запросов к сайту.

Помимо оптимизации обработки запросов, персональный веб-сервер позволяет использовать программное обеспечение, отсутствующее на общем веб-сервере: акселераторы PHP, комплексное решение по повышению производительности проектов под управлением CMS «1С-Битрикс» и инструмент отладки скриптов PHP.

Услуга доступна для использования на всех актуальных тарифных планах, подключить ее можно в разделе «Веб-сервер» Панели управления хостингом.

Принцип работы

Принципиальная схема Принципиальная схема

На технической площадке хостинга действует двухуровневая конфигурация веб-сервера. Общий веб-сервер Apache, приняв запрос от Nginx, вынужден создавать новый дочерний процесс и завершать его по окончании обработки запроса.

Персональный веб-сервер существенно упрощает взаимодействие аккаунта с главным процессом Apache: из-под имени пользователя аккаунта хостинга всегда запущено определенное количество процессов персонального веб-сервера, которые имеют только два состояния: «занято» или «свободно».

Процессы персонального веб-сервера занимаются обработкой запросов к сайту в количестве, определенном выбранным тарифным планом. Увидеть, как процесс персонального веб-сервера принимает и выполняет какой-либо запрос, а затем освобождается, можно самостоятельно при помощи утилиты top в консоли при подключении к аккаунту хостинга по SSH.

Возможности

  • Запуск веб-сервера Apache с дополнительными модулями, отсутствующими на обычных аккаунтах виртуального хостинга.
  • Перезапуск персонального веб-сервера из Панели управления.
  • Использование акселераторов PHP, существенно ускоряющих работу различных CMS: Zend OPCache, APC, xCache и eAccelerator.
  • Управление расширениями PHP: Zend Optimizer, ionCube Loader, xDebug.
  • Оптимизация проектов под управлением CMS 1С-Битрикс за счет настройки окружения PHP, удовлетворяющего требованиям CMS.
  • Более высокая производительность по сравнению с общим веб-сервером за счет постоянно запущенных процессов-обработчиков запросов.

Мы рекомендуем использовать услугу «Персональный веб-сервер» при размещении серьезных проектов со средней и высокой посещаемостью, либо проектов, требующих нестандартных настроек окружения и расширенных возможностей администрирования сайтов.

Управление версией веб-сервера

PHP

PHP (Hypertext Preprocessor) — самый известный и распространенный язык разработки веб-приложений. Версия PHP устанавливается через управление персональным веб-сервером для всех сайтов на аккаунте (для выбора доступны от 5.2 до 7.0 включительно). Рекомендуемой версией PHP, удовлетворяющей требованиям большинства CMS и расширений, является PHP 5.6. Список актуальных версий своевременно обновляется.

uWSGI (Python)

WSGI (Web Server Gateway Interface) — популярный стандарт взаимодействия между Python-программой, выполняющейся на стороне сервера, и самим веб-сервером Apache. Необходим для работы проектов, написанных на языке Python.

Использование акселераторов PHP

Акселераторы PHP — это расширения, сохраняющие в оперативной памяти скомпилированный код скрипта PHP для быстрого выполнения при следующем вызове. Позволяют значительно ускорить выполнение скриптов PHP и сократить необходимые для этого ресурсы веб-сервера (по некоторым оценкам — в 5-20 раз).

При обычной схеме работы PHP каждый скрипт перед выполнением должен быть скомпилирован в машинный код и только после этого запущен. Компиляция происходит при каждом обращении к скрипту, то есть, при каждом отображении страницы компиляция скрипта начинается заново. Для компиляции скрипта требуется время и ресурсы процессора. Акселераторы PHP сохраняют скомпилированную версию скрипта в оперативной памяти. Таким образом, при последующих обращениях к скрипту компиляция не требуется, и PHP сразу приступает к выполнению машинного кода. За счет кеширования происходит экономия ресурсов процессора и сокращается время, требуемое для отображения страницы.

Помимо основной функции — кеширования скриптов — акселераторы также предоставляют скриптам возможность сохранять в оперативной памяти произвольные переменные для последующего быстрого доступа. На этой возможности основаны механизмы кеширования страниц во многих системах управления сайтом (CMS), что значительно ускоряет их работу.

При использовании персонального веб-сервера доступно четыре акселератора, обеспечивающих кеширование скриптов PHP.

Zend OPCache

Zend OPCache — ускоряет работу сайтов на языке PHP за счет использования техники кеширования скомпилированных скриптов (опкода) в оперативной памяти и применения дополнительных оптимизаций. Тестирование применения данного акселератора показало наиболее оптимальные результаты для большинства CMS в связке с PHP 5.6.

APC

APC (Alternative PHP Cache) — программное обеспечение с открытым кодом для кеширования результата скриптов PHP. Рекомендуется использовать кешер APC для повышения производительности сайтов, созданных на популярных CMS, таких как Joomla, WordPress, Drupal, UMI.CMS.

eAccelerator

eAccelerator — выполняет функции акселератора, оптимизатора и распаковщика и имеет встроенные функции динамического кеширования контента. По результатам тестирования, проводимого с представителями производителей CMS, eAccelerator рекомендован к использованию с CMS «1С-Битрикс: Управление сайтом» и популярной HostCMS.

xCache

xCache — эффективен для высоконагруженных проектов. Акселератор xCache доступен только при использовании CMS, производителями которых он был рекомендован.

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

Модули и расширения PHP

ZendOptimizer

Zend Optimizer — приложение от компании Zend Technologies Ltd. Расширение Zend Optimizer является серверным модулем, который используется для запуска закодированных с помощью Zend Encoder и Zend SafeGuard Suite скриптов, существенно увеличивающий скорость их работы. Доступен только для версии PHP 5.2.

ionCube Loader

ionCube Loader — программное обеспечение, необходимое для декодирования исходного кода, закодированного при помощи технологии ionCube Encoder. В общей сложности набор утилит ionCube (Encoder и Loader) позволяет производить кодирование, обфускацию и лицензирование исходного кода, написанного на языке PHP.

xDebug

Xdebug — ПО с открытым кодом, необходимое опытным разработчикам для отладки работы скриптов сайта. Включение ресурсоемкой утилиты xDebug реализует возможность ведения журнала, в который будут записаны все действия, начиная от обращения к сайту из браузера и до получения готовой странцы: выполнение внутренних скриптов, формирование SQL-запросов, обращение сайта к сторонним ресурсам и т.д.

Оптимизация для «1С-Битрикс»

Популярная система управления сайтом «1С-Битрикс» имеет ряд системных требований к хостинговой площадке, в том числе, настройку многобайтовых строк, на современных версиях PHP подлежащих изменению только через файл php.ini. Как опытные разработчики, так и начинающие пользователи смогут настроить механизм перегрузки функций mbstring.func_overload и поддерживаемую кодировку символов mbstring.internal_encoding, выбрав необходимую версию в списке «Оптимизация 1С-Битрикс».

В результате тестирования производительности сайта под управлением «1С-Битрикс» лучшие показатели были достигнуты при применении рекомендуемого кеширования средствами акселератора ZendOPCache в связке с PHP 5.6.

Для того чтобы настройки вступили в силу, необходимо применить нужный параметр и перезапустить персональный веб-сервер.