Производительность

«Созданный и размещенный в Интернете веб-сайт эффективно решает поставленные задачи не только в случае наличия качественного контента и удобной навигации, но и тогда, когда он преподносит материалы посетителям и взаимодействует с ними быстро и без сбоев.
«1С-Битрикс: Управление сайтом» позволяет достичь превосходных результатов по быстродействию даже в условиях ограниченности ресурсов на виртуальном хостинге, а также строить высокопроизводительные системы для веб-сайтов с очень большой посещаемостью и высокими пиковыми нагрузками».
Генеральный директор, «1С-Битрикс», Сергей Рыжиков

Готовность к высоким нагрузкам

Компании «1С-Битрикс», «Онтико» и .masterhost в ноябре 2010 года провели нагрузочное тестирование программного продукта «1С-Битрикс: Управление сайтом» (версия 9.5).

Результаты нагрузочного тестирования подтверждают, что «1С-Битрикс: Управление сайтом» стабильно работает в условиях сверхбольших нагрузок.

«Бизнес» (шаблон Интернет-магазин)

  • 8 511 355 хитов в сутки
  • 21 925 авторизованных пользователей интернет-магазина
  • 13 155 сформированных заказов в интернет-магазине

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

«Старт» (опция «HTML кеширование» выключена)

  • 12 420 746 хитов в сутки

Сценарием тестирования являлась оценка производительности программной платформы «1С-Битрикс: Управление сайтом» (редакция «Старт», опция «HTMLкеширование» выключена).

«Старт» (опция «HTML кеширование» включена)

  • 85 103 456 хитов в сутки

Сценарием тестирования являлась оценка производительности промо-сайта, созданного и работающего на программной платформе «1С-Битрикс: Управление сайтом» (редакция «Старт», опция «HTMLкеширование» включена).

Высокая производительность на доступном оборудовании

В нагрузочном тестировании использовался сервер «EuroDedicated Универсальный», HP ProLiant DL120, 1×Intel Quad Core X3210, 1×1TB SATA, 8GB RAM, CentOS 5.3 x86_64, предоставленный компанией .masterhost. То есть продукт тестировался на обычном недорогом оборудовании, которое может взять в аренду любой клиент хостинг-провайдера.

Нагрузочное тестирование версии 6.0 (MySQL) продукта проводилось в начале 2007 года компаниями «1С-Битрикс», QSOFT и .masterhost. Результаты редакции «Бизнес»: 1 593 983 хита в сутки. Подробнее

Проекты с высокой нагрузкой

Интернет-магазин Эльдорадо
Интернет-магазин «Эльдорадо»
— более 1 000 000 хитов
— редакция «Бизнес» (MySQL)
Сайт журнала Cosmopolitan
Сайт журнала Cosmopolitan
— более 600 000 хитов
— редакция «Эксперт» (MySQL)
Интернет магазин Связной
Интернет магазин «Связной»
— более 700 000 хитов
— редакция «Большой бизнес» (MySQL)

Другие проекты

Мнение экспертов

«1С-Битрикс: Управление сайтом» — решение для любых нагрузок

«1С-Битрикс: Управление сайтом» — многофункциональный продукт с широкими возможностями, но раньше за это приходилось расплачиваться значительной потерей производительности, особенно в случаях, когда за разработку ресурса брался не очень квалифицированный пользователь. Тестирование показало, что в новых версиях «1С-Битрикс» разработчикам удалось устранить узкие места и значительно повысить производительность системы. Это успех!».

Дмитрий Криков, технический директор компании .masterhost

Нагрузочное тестирование

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

Нагрузочное тестирование позволяет определить предел работоспособности созданного проекта именно на этом оборудовании. Зачастую простые корректировки конфигурации могут ускорить проект в 5-10 раз и сделать его устойчивым к стрессовым нагрузкам.

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

Артем Рябинков, ведущий аналитик, координатор проектов компании «1С-Битрикс»

Основные цели нагрузочного тестирования MySQL-версии продукта «1С-Битрикс: Управление сайтом»9.5, совместно проведенного в 2010 году компаниями «1С-Битрикс», «Онтико» и .masterhost:

  • Проверка и оптимизация конфигурации серверного программного обеспечения (цель – получить идеальное веб-окружение; тесты проводились на «1С-Битрикс: Веб-окружение» версии 1.6, по результатам выпускается версия 2.0)
  • Оценка максимальной производительности, которую способны выдерживать типовые редакции на доступном выделенном оборудовании
  • Влияние опций и модулей продукта на производительность
  • Оценка стабильности при максимальных нагрузках при проведении 24-часовых тестов
  • Выявление ограничений конфигурации, определение методов дальнейшего масштабирования и оптимизации
  • Проверка продукта в различных сценариях

Полученные результаты

Редакция «Бизнес» (шаблон «Интернет-магазин»)
  • 8 511 355 хитов в сутки
  • 21 925 авторизованных пользователей интернет-магазина
  • 13 155 сформированных заказов в интернет-магазине

Сценарием тестирования являлась оценка производительности интернет-магазина, созданного и работающего на программной платформе «1С-Битрикс: Управление сайтом» (редакция «Бизнес», опция «HTML кеширование» выключена, опция «Проактивный фильтр (Web Application Firewall)» включена).

Редакция «Старт» (опция «HTML кеширование» выключена)
  • 12 420 746 хитов в сутки

Сценарием тестирования являлась оценка производительности программной платформы «1С-Битрикс: Управление сайтом» (редакция «Старт», опция «HTML кеширование» выключена).

Редакции «Старт»(опция «HTML кеширование» включена)
  • 85 103 456 хитов в сутки

Сценарием тестирования являлась оценка производительности промо-сайта, созданного и работающего на программной платформе «1С-Битрикс: Управление сайтом» (редакция «Старт», опция «HTML кеширование» включена).

Результаты нагрузочного тестирования подтверждают, что «1С-Битрикс: Управление сайтом» стабильно работает в условиях сверхбольших нагрузок!

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

Высокая производительность на доступном оборудовании

В нагрузочном тестировании использовался сервер «EuroDedicated Универсальный», HP ProLiant DL120, 1×Intel Quad Core X3210, 1×1TB SATA, 8GB RAM, CentOS 5.3 x86_64, предоставленный компанией .masterhost. То есть продукт тестировался на обычном недорогом оборудовании, которое может взять в аренду любой клиент хостинг-провайдера.
Скачать подробный отчет о тестировании (1.3 Мб)

Масштабирование интернет-проектов

Любой новый или работающий проект на «1С-Битрикс: Управление сайтом» может быть представлен как веб-кластер взаимозаменяемых серверов.

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

Описание модуля Веб-кластер

Диагностика проекта и рекомендации

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

Анализ конфигурации 1С-Битрикс
Анализ конфигурации «1С-Битрикс»

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

«Панель производительности» модуля позволит не только протестировать производительность проекта, но и сравнить полученные результаты с эталонной системой. И, что важно, при этом даются рекомендации по настройке и приводится список самых нагруженных страниц.

Эталонные замеры производительности, которые используются «Монитором производительности», выполнены на виртуальной машине VMware, разработанной специалистами «1С-Битрикс». Вы тоже можете бесплатно проверить, насколько быстро заработает ваш сайт на «1C-Битрикс: Виртуальная машина».

Информация для разработчиков

Кеширование информации

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

При этом кеширование является превосходным инстументом для небольших проектов, содержащих редко обновляемые данные. Технология кеширования проста в использовании, не требует от пользователя отслеживать изменения и создана для повседневного использования.


Настройки автокеширования

Оптимизация кода

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

Инструменты отладки

Инструменты отладки являются прекрасным подспорьем разработчикам в ежедневной работе.В состав продукта включается отладочный инструментарий, который позволяет проанализировать время работы каждого отдельного компонента и всей страницы в целом. Инструмент позволяет изучить каждый SQL-запрос, созданный компонентом, место вызова, время работы компонента, время и процент исполнения SQL-запросов этого компонента. Полная статистика собирается и показывается по времени исполнения всей страницы и всем SQL-запросам.

Компрессия трафика

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

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

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

Сжатие контента можно осуществлять непосредственно веб-сервером В частности для Apache есть модули mod_gzip и mod_deflate. Также компрессию возможно реализовать на стороне PHP включением директивы zlib.output_compression=1.
Несмотря на это, в продукте мы реализовали отдельный модуль компрессии, который позволяет вам не зависеть от настроек серверного ПО. Это дает вам следующие преимущества:

  • компрессия работает незаметно и не требует установки и настройки сторонних модулей
  • вы получаете возможность использования компрессии на виртуальном хостинге, когда очень часто компрессия на стороне сервера выключена
  • загрузка процессов веб-сервера минимальна
  • модуль компрессии в продукте корректно работает со всеми браузерами, и даже исправляет ряд их ошибок. В частности в браузере Internet Explorer существовала проблема, когда при распаковке компрессированного контента терялись 2Кб начальных данных. Кроме того, модуль безошибочно определяет, поддерживает ли компрессию браузер или прокси-сервер клиента

Примеры проектов с высокой нагрузкой

Высокие показатели, полученные при нагрузочном тестировании продукта, лучше всего подтверждаются результатами работы реальных сайтов. Ниже приведены примеры некоторых крупных веб-проектов, разработанных на «1С-Битрикс: Управление сайтом». К сожалению, мы не можем указывать точные данные о серверах и пиковой посещаемости проектов. По этой причине мы решили выделить только некоторые проекты, посещаемость которых лежит в диапазоне от 5 000 до 50 000 уникальных пользователей в день и которые используют для работы один или два выделенных сервера. Мы также включили в этот список проекты с большими каталогами товаров или контента (новостей, статей) или форумами.

Интернет-магазин «Эльдорадо»
Интернет-магазин «Эльдорадо»
Сайт PC Magazine/RE
Сайт журнала PC Magazine/RE
Сайты ИД «Компьютерра»
Сайты ИД «Компьютерра»
PC-MOBILE.RU - журнал PC-Mobile
Сайт журнала PC-Mobile
Сайт компании Фаматек
Сайт компании «Фаматек»
Сайт компании «Ритлабс»
Сайт компании «Ритлабс»
Портал по безопасности Securitylab.ru
Портал по безопасности Securitylab.ru
Сайт Юниаструм Банка
Сайт Юниаструм Банка
Сайт компании «Промт»
Сайт компании PROMT
Сайт компании SmartLine Inc
Сайт компании SmartLine
Сайт компании Корбина Телеком
Сайт компании «Корбина Телеком»
Проект компании «Alawar Entertainment»
Проект компании Alawar Entertainment
ООО СК
Сайт компании Zurich
Корпоративный сайт ОАО Ростелеком
Корпоративный сайт ОАО «Ростелеком»
Сайт журнала Cosmopolitan
Сайт журнала Cosmopolitan
Портал Banki.ru
Портал Banki.ru
Сайт компании «Agnitum»
Сайт компании Agnitum
DEUTSCHLAND SPIELT!
Портал Deutschland-spielt.de
Panasonic СНГ
Panasonic СНГ
Сайт компании АВТОDOM
Сайт компании АВТОDOM
Использованы материалы с сайта «1С-Битрикс»: www.1c-bitrix.ru