Проект компаний
 
 
 
 
RU|CMS и клиентские технологии

Мониторинг серверных и клиентских веб-решений

Дата публикации: 04/12/2012

Начат новый долговременный проект — регулярный мониторинг распространенности различных технологических решений стороны сервера и стороны клиента на веб-узлах русскоязычного сегмента Интернета.

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

В этой статье описываются первые полученные результаты.

Предмет исследования

К настоящему моменту разработана пилотная версия системы мониторинга и собрана статистика, охватывающая 2 810 704 уникальных хоста, размещающихся на доменах второго уровня в зоне ru. Для пробного исследования отобраны делегированные домены второго уровня в домене верхнего уровня ru, не размещенные на общеизвестных доменных парковках. Такие домены должны с относительно высокой вероятностью использоваться для размещения на них в том или ином смысле полноценных веб-сайтов.

Предметную область исследования составляют:

Методика и общие результаты опроса хостов

Значимые для анализа данные собраны со всех хостов, ответивших по HTTP-запросу ресурса / (корневой каталог дерева документов веб-сервера) сообщением с кодом статуса 200, содержащим в теле объект с заявленным MIME-типом text/html.

Все фигуранты вышеупомянутого списка из 2 810 704 позиций опрашивались дважды: по адресу хоста *.ru и по адресу хоста www.*.ru. Строго говоря, в этом случае речь идет о 5 621 408 уникальных хостах, но на практике случаи целенаправленного использования доменов второго уровня *.<TLD> и третьего уровня www.*.<TLD> для совершенно различных нужд являются единичными. Поэтому авторы исследования позволили себе считать каждую такую пару одной и той же сущностью.

Работающих веб-узлов, выявленных в результате опроса хостов описанным выше способом, оказалось в общей сложности 2 241 250, что составляет 79,74% от количества всех опрашивавшихся хостов.

Наличие индексных страниц

При этом абсолютное большинство из них — 1 672 477 веб-узлов или 74,62% — оказались доступными как по адресу хоста *.ru, так и по адресу хоста www.*.ru.

Исключительно по адресу хоста *.ru доступны 361 652 веб-узлов (16,14%).

Только по адресу хоста www.*.ru успешно отвечает на HTTP-запрос индексной HTML-страницы 207 121 веб-узел (9,24%).

Отклики с и без www

Наиболее предпочтительной во втором десятилетии XXI века следует счесть такую конфигурацию веб-сервера: основным для сайта является хост *.<TLD>, а по адресу хоста www.*.<TLD> настроен редирект с кодом статуса 301 на основной хост.

Технологии стороны сервера

Наиболее общеупотребительные CMS

Первоначальная версия системы мониторинга обнаруживает на исследуемых веб-узлах характерные признаки 7 распространенных CMS. Анализируется множество прямых и косвенных признаков, обнаруживаемых:

Согласно уже имеющимся похожим исследованиям (iTrack) и экспертным рейтингам («Рейтинг Рунета», Tagline), есть основания полагать, что на долю 7 выявляемых в рамках описываемого исследования технологических решений приходится по крайней мере более 70% всех используемых на сайтах Рунета сколько-либо заметных (то есть имеющих порядка тысячи и более установок на реальных проектах) CMS. В будущих версиях разрабатываемой системы мониторинга планируется расширять перечень детектируемых CMS.

Одна из семи известных системе мониторинга CMS относительно надежно обнаруживается на 641 032 веб-узлах, что составляет 22,81% от общего количества проверенных хостов или 28,60% от количества веб-узлов, имеющих индексную HTML-страницу.

Наличие установленных CMS

Если принять все обнаружения CMS за 100%, распределение конкретных решений выглядит следующим образом:

Приведенные результаты включают в себя незначительное количество (181 случай) обнаружений наличия относительно достоверных признаков наличия двух и более установленных CMS на одном и том же веб-узле.

Популярные CMS

Типы и версии веб-серверов

Коль скоро в процессе исследования характерных признаков тех или иных CMS анализируются заголовки HTTP-сообщений ответа серверов, показалось интересным вычленять из них и данные, не относящиеся напрямую к обнаружению систем управления содержимым сайтов. Так, проанализированы поля Server HTTP-сообщений ответов веб-серверов с целью выяснить порядок цифр, отражающих распространенность наиболее популярных веб-серверов — Apache и nginx.

Серверы идентифицируют себя как Apache (всех версий) на 699 434 веб-узлах — это 31,21% хостов, ответивших по HTTP.

При этом на долю Apache 1.x приходится всего 49 473 веб-узлов, или 2,21% от их общего количества.

Как Apache 2.x идентифицируют себя веб-серверы на 335 221 хостах или на 14,96% веб-узлов.

Российская разработка nginx упоминается в HTTP-заголовках в 1 322 209 случаях — речь идет о 58,99% веб-узлов. Нужно понимать, однако, что nginx зачастую используется не как самостоятельный веб-сервер, а как прокси-сервер, выполняющий те или иные посреднические функции между клиентами и тем же Apache или другим веб-сервером.

Веб-серверы

Технологии стороны клиента

Кодировки и объемы HTML-кода

В настоящее время практически отсутствуют технические препятствия, мешающие повсеместному распространению Unicode, поэтому представляется, что единственно правильным выбором кодировки для представление данных в вебе является UTF-8.

Между тем, в исследованной выборке только 1 060 322 веб-серверов (менее половины от общего их количества, 47,31%) сообщают в поле HTTP-заголовка Content-Type о том, что содержимое индексной HTML-страницы отдается в кодировке UTF-8.

Средний объем HTML-кода индексной страницы равен 25 513 байтам.

Подавляющее большинство индексных страниц — 89,38% — имеют объем менее 50 000 байт. В то же время, наблюдается заметное количество (1757 случаев) индексных страниц объемом более 1 000 000 байт.

Размеры индексных страниц

Объем HTML-кода измеряется непосредственно скриптом системы мониторинга. Текущая версия системы никак не анализирует HTML-код, сжатый на стороне сервера при помощи алгоритмов gzip, deflate или compress (в том числе не измеряет объем этого содержимого), отправляя в заголовке HTTP-сообщения запроса поле Accept-Encoding: identity. Количеством веб-узлов, пренебрегающих этой информацией в заголовке запроса, на данном этапе исследования вполне можно пренебречь — выявлено всего 7258 таких случаев. В последующих версиях системы планируется предусмотреть поддержку распаковки сжатого содержимого, что, в свою очередь, позволит собирать статистику использования динамического сжатия контента на веб-узлах Рунета.

Характерные конструкции HTML-кода

Весомой составляющей мониторинга является анализ HTML-кода индексных страниц исследуемых веб-узлов на наличие или отсутствие ряда характерных вхождений, позволяющих делать общие выводы о мере соответствия духу современных веб-стандартов (разъяснение этого не слишком строгого понятия приводится, в частности, в одной из статей в рамках проекта WebHiTech).

Особый интерес представляет изучение частотности использования тех или иных объявлений типов документов (<!DOCTYPE …>, доктайп). Доктайп обычно является первой строкой HTML-кода, предшествуя всем другим конструкциям. Иногда доктайпу может предшествовать XML-декларация с возможным указанием кодировки. На морально устаревших сайтах доктайп отсутствует как таковой. От вида конструкции <!DOCTYPE …> зависит, в каком режиме браузер будет отрисовывать страницу — standards mode (режим соответствия стандартам) или quirks mode (режим совместимости). В рамках исследования выделено 11 наиболее общеупотребительных доктайпов. Среди ключевых результатов можно отметить то, что уже на 10,11% веб-узлов или, в абсолютном выражении, на 226 554 исследованных индексных страницах используется наиболее предпочтительный в настоящее время доктайп HTML5, имеющий простую форму записи <!DOCTYPE html> и по смыслу не являющийся SGML-декларацией, а имеющий лишь единственное предназначение — переключение браузеров в standards mode. Обнадеживает тот факт, что доктайпы, переключающие браузеры в standards mode, находятся в большинстве — таковые обнаружены на 1 507 844 индексных страницах (это 67,28% исследованных веб-узлов).

Доктайпы

Исследованы многие другие характерные конструкции, распространенность которых представляет безусловный профессиональный интерес для веб-разработчиков. Например, элементы и атрибуты HTML сгруппированы в несколько категорий; проанализирована распространенность каждой из них:

Результаты исследования говорят о том, что веб-разработчики продолжают обращаться с HTML весьма вольно, допуская не рекомендованные и нестандартные решения.

Веб-стандарты

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

Веб-узлов, удовлетворяющих всем этим условиям, оказалось всего 1703, или 0,08% от общего количества. Причем большинство из них — это примеры использования типовых шаблонов для популярных CMS, в основном WordPress. Как и следовало ожидать, счет оригинальных сайтов, выполненных в духе технологического перфекционизма, идет на единицы.