Корм для Битрикс-попугаев. Тестируем производительность, подбираем железо
31 января 2019
Всем нужны Битрикс-попугаи, и побольше. Я работаю администратором в хостинг-компании и постоянно сталкиваюсь с такими запросами. Давайте покончим с этим раз и навсегда — в этой статье вы найдёте ответ, как железо влияет на производительность CMS Битрикс (реальную и «попугайную»). Проведём тесты и подберём несколько конфигураций сервера.
Цели исследования:
Условия тестирования:
Методика
Для выявления зависимости показателей Битрикс от производительности процессора и оперативной памяти используем следующую конфигурацию:
Процессор: Intel Core i7-3770K CPU @ 3.50GHz
Память: DDR3 Samsung 1600 MHz (M378B5273DH0-CH9)
SSD: OCZ-VERTEX4 128Gb MLC
HDD: WD5000AAVS-00ZTB0
Данная конфигурация позволяет в широком диапазоне изменять частоту процессора, а значит не нужно множество раз заменять CPU. Для изменения частоты используется утилита frequency-set. Драйвер intel_pstate не позволяет управлять частотой, поэтому отключен.
Замеры проводим с шагом 400Гц. Помимо показателей производительности Битрикс, замеряем сколько запросов главной страницы может выполнить сервер за одну секунду. Для замера показателей производительности при использовании HDD-диска, на HDD создана реплика ранее настроенной системы и собраны показатели на максимальной частоте.
Вот такие графики у меня получились:
По ссылке pdf со всеми данными в графиках и таблицах. Плюс дополнительные данные про зависимость показателей файловой системы и базы данных от количества ядер и частоты процессора.
Согласно полученным данным, можно сделать следующие выводы:
Учитывая полученные данные, соберём несколько серверов и проверим их производительность. Чтобы подтвердить или опровергнуть получившуюся теорию, я взял три недорогих конфигурации с разной частотой и количеством ядер. И ещё несколько серверов, где ядер побольше.
Для данных серверов частота будет выставляться автоматически (intel_pstate включен в режиме performance), в таблице приведена максимальная частота согласно спецификации процессора.
Что ищем?
Теория подтвердилась↓
Показатели производительности соответствуют ранее выявленной закономерности. Чем выше частота, тем более высокий балл показывает Битрикс. А если требуется сервер, способный обслуживать большое количество посетителей — стоит выбирать больше ядер с максимально высокой базовой частотой.
Серверы на E5-2640v4 и 2xE5-2699v4 можно заказать со скидкой 10% на 2 месяца — обратитесь в отдел продаж с кодовой фразой «Нужен сервер под Битрикс, для реальной производительности». При оплате за год минус ещё 10%.
Или вы принципиально закармливаете попугаев?
Автор: Станислав Авдеев, системный администратор FirstDEDIC