Производительность Битрикс: что сделать с сервером, чтобы сайт работал быстрее

От скорости сайта зависит многое: количество отказов, брошенных корзин. Согласно исследованию Google, большинство посетителей не ждёт загрузки больше 3 секунд и уходит к конкурентам. Бывает, что сайт тормозит только в момент пиковых нагрузок (часы наибольшей посещаемости, периоды акций) и вы теряете всех, кого так тщательно привлекали.

От чего зависит скорость сайта на Битриксе?
  • оптимизация компонентов сайта
  • набор модулей
  • оптимизация серверного ПО
  • достаточное количество ресурсов сервера
С оптимизацией компонентов сайта вам поможет разработчик. Но если есть навыки администрирования, можно перейти на nginx+php-fpm и оптимизировать настройки.

В большинстве случаев, чтобы повысить производительность, нужен анализ текущей нагрузки на сервер. Такое умеют наши администраторы. Но есть и базовые настройки, которых достаточно, чтобы улучшить производительность Битрикс на большинстве серверов. Америку не открываем, если вы хорошо знакомы с *nix, едва ли вы обнаружите что-то новое.

В качестве ОС будем использовать минимальную версию Debian 9. Потому что в предыдущей статье про производительность Битрикс мы использовали именно её. В конце сравним показатели получившейся конфигурации с BitrixVM.

Веб-сервер — Nginx
Лучшим решением будет использование в качестве веб-сервера Nginx. Он шустро работает со статичным контентом и не плодит форков, как это делает apache2. Форки apache2 часто оказываются причиной перерасхода сервером оперативной памяти, потому выбор Nginx снижает требования к объему RAM.

Ставим и конфигурируем Nginx:
apt install nginx
upstream php {
    server 127.0.0.1:9000;
}
server {
    root /var/www/html/;
    server_name _;
    listen 80 default_server;
    index index.php;
    location / {
        try_files \$uri \$uri/ /bitrix/urlrewrite.php?\$args;
    }
    location ~ \.php$ {
        include        fastcgi_params;
        fastcgi_pass   php;
        fastcgi_index  index.php;
        fastcgi_param  SCRIPT_FILENAME \$document_root/\$fastcgi_script_name;
    }
    location ~* \.(js|css|png|jpg|jpeg|gif|ico)\$ {
        expires max;
        log_not_found off;
    }
}


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

Сервер БД
В качестве сервера БД используем MariaDB 10.1 из репозитория ОС. Практика показывает, что для нашей задачи гнаться за последними версиями MySQL/MariaDB совершенно не обязательно — значительной разницы в производительности нет.

Важно! После развертывания сайта нужно выполнить «Проверку системы» с исправлением ошибок структуры БД, а также «Оптимизацию БД», оба действия выполняются в админке Битрикс. Эти операции создадут индексы и устранят фрагментацию, что благотворно скажется на производительности.

Ставим и конфигурируем MariaDB:
apt install mariadb-server
cat <<-\EOF >/etc/mysql/mysql.conf.d/server.conf
    [mysqld]
    innodb_buffer_pool_size=384M #это значение нужно подбирать исходя из размера innodb таблиц
    innodb_buffer_pool_instances=1 # По одному пункту на каждый Гб innodb_buffer_pool_size
    innodb_flush_log_at_trx_commit=2
    innodb_flush_method=O_DIRECT
    query_cache_type=1
    query_cache_size=16M
    query_cache_limit=4M
    key_buffer_size=256M
    join_buffer_size=2M
    sort_buffer_size=4M
    tmp_table_size=128M
    max_heap_table_size=128M
    thread_cache_size=4
    table_open_cache=2048
    max_allowed_packet=128M
    transaction-isolation=READ-COMMITTED
    performance_schema=OFF
    sql_mode=""
EOF


PHP-FPM
Ещё одна причина отказа от apache2 — использование php-fpm, наиболее быстрого режима работы php-интерпретатора. Наиболее производительной на текущей момент является php7.3, однако в официальном репозитории Debian 9 мы имеем php7. Из соображений связности с предыдущей статьей про производительность Битрикс тут мы тоже будем использовать php7 из репозитория Debian.

Ставим и конфигурируем php-fpm:
apt install php-fpm php-opcache php-mysqli php-gd php-curl php-xml php-mbstring php-json
cat <<-\EOF >/etc/mysql/mysql.conf.d/server.conf
    ;###Bitrix optimize
    date.timezone=Europe/Moscow
    short_open_tag=1
    max_input_vars=10000
    mbstring.func_overload=2 ;Этот пункт нужен если используется utf8
    mbstring.internal_encoding=utf-8 ;Этот пункт нужен если используется utf8
    upload_max_filesize=64M
    post_max_size=64M
    opcache.max_accelerated_files=100000
    realpath_cache_size=4096k
    memory_limit=512M
    pcre.jit=0
    opcache.revalidate_freq=0
EOF
cat <<-\EOF >/etc/php/7.0/fpm/php.ini
    [www]
    user = www-data
    group = www-data
    listen = 127.0.0.1:9000
    listen.allowed_clients = 127.0.0.1
    listen.owner = www-data
    listen.group = www-data
    pm = dynamic
    pm.max_children = 10
    pm.start_servers = 2
    pm.min_spare_servers = 2
    pm.max_spare_servers = 5
EOF


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

Настраиваем и применяем:
apt install cpufrequtils
echo 'GOVERNOR="performance"' > /etc/default/cpufrequtils
cpupower frequency-set --governor performance


Сравниваем производительность
Производительность получившейся конфигурации:


Производительность в окружении BitrixVM:



Если вы оптимизировали сервер по инструкции, но производительность всё равно не устраивает — нужно провести диагностику нагрузки и решить, что вам требуется:
1. Обратиться к разработчику для оптимизации кода
2. Найти дополнительные варианты оптимизации
Например, перенести сессии в оперативную память, настроить Nginx кеширование, заблокировать нежелательных ботов.
3. Добавить ресурсов сервера
Даже в случае с идеально написанным сайтом и не менее идеально оптимизированным сервером в какой то момент узким местом окажутся ресурсы.

Недостаток оперативной памяти не позволит полностью задействовать процессор, а избыток памяти при полностью загруженном работой процессоре не принесёт никакой пользы. Если узким местом оказывается пропускная способность сети — пришло время задуматься о переходе на выделенные серверы с гигабитным каналом. Как выбрать сервер для Битрикс есть в моей предыдущей статье.

Чтобы понять, какой вариант дальнейших действий ваш — обратитесь к системному администратору. Если ваш сайт на наших серверах для Битрикс — помогут наши ребята. Первый месяц после заказа сервера администрирование бесплатно.

Плюс для наших серверов под Битрикс можно использовать уже готовый рецепт с описанной оптимизацией — GT: для Centos7, с MariaDB (10.3), Nginx (1.14.2) и наиболее производительной версией php (7.3). Эти VDS живут на новейшем железе: высокочастотных процессорах Core i9-9900k и скоростных NVMe-дисках.
firstvds.ru/hosting/bitrix

Весенняя поддержка Xelent

Дорогие друзья!

Приближается теплая весенняя погода (мы верим) и праздники.

Не глядя в окно, мы поздравляем Вас с наступившей весной, а всех храбрых девушек из IT c грядущим праздником 8 марта.

Хочется пожелать Вам отличного настроения, процветания и бесперебойности Вашего бизнеса.

Платформа Cloud.Xelent — как раз такое надежное решение, которое закрывает все потребности в части создания облачной инфраструктуры компании.


Полная автоматизация нашей платформы отлично дополняется живым общением с техническим специалистом, который в режиме онлайн
  • ответит на все ваши вопросы,
  • поможет подобрать конфигурацию, разобраться в шаблонах, бэкапах, снепшотах и организации частных сетей,
  • подскажет как настроить VPN
  • и ответит еще на тысячу технических вопросов, которые могут у вас возникнуть в процессе работы с Cloud.Xelent.
xelent.bitrix24.ru/online/https-xelent.bitrix24.ru-support

Праздничная скидка ждет вас



Друзья!
В этот светлый и красивый день хотим поздравить дам с Международным женским днем!
Желаем огромной радости во всем, любви, тепла, везенья.

В честь праздника мы дарим скидку 10% на заказ и продление услуги хостинга или VDS.
Акция действует с 6.03 по 10.03 (включительно).

Чтобы воспользоваться предложением, введите при заказе промо-код: 8marta19

С праздником!

webhost1.ru

Мы успешно завершили все мероприятия по подключению каналов до Eurasia-IX, Piter-IX

Мы успешно завершили все мероприятия по подключению каналов до Eurasia-IX, Piter-IX и установили приватный пиринг с Google. Это позволило исключить возможные потери трафика на оптике, а также улучшило резервирование и связь по многим направлениям.

Делимся фото с результатом!

Объемы фишинга снижаются, несмотря на изменения в Whois

Как сообщает Антифишинговая рабочая группа (APWG), объемы фишинга сократились почти в два раза по сравнению с прошлым годом.

Так, в четвертом квартале 2018 года было зафиксировано 138 328 фишинговых атак, а в третьем, втором и первом кварталах — соответственно, 151 014, 233 040 и 263 538.

Это очень большое снижение, которое произошло несмотря на то, что в мае 2018 года был ограничен доступ к данным Whois. Многие предполагали, это приведет к снижению безопасности, так как злоумышленникам будет проще скрывать свои личные данные. Но опасения в этом плане, как видим, не оправдались.

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

Таким образом, выявлять некоторые фишинговые сайты становится труднее.

Больше всего фишинговых атак было совершено в зоне .COM. За четвертый квартал 2018 года в ней было найдено 2098 уникальных доменов злоумышленников. Намного меньше — в зонах .PW (374домена), .NET (175 доменов), .ORG (154 домена). Из новых gTLD в число лидеров попали только зоны .XYZ и .ONLINE (37 и 33 домена соответственно).

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

www.webnames.ru

Доступны к заказу по акции 2 мощных сервера E5



Примеры конфигураций (выбрать свою можно в конфигураторе):

Intel Xeon E5-2630v4 10-core
  • 32Gb RAM
  • 2 x 1Tb Enterprise HDD
  • 100Mbit Unmetered
  • $153/мес

Intel Xeon E5-2630v4 10-core
  • 64Gb RAM
  • 2 x 1Tb Enterprise HDD
  • 1 x 512Gb NVMe SSD
  • 100Mbit Unmetered
  • $195/мес

2 x Intel Xeon E5-2630v4 10-core
  • 128Gb RAM
  • 2 x 1Tb Enterprise HDD
  • 1 x 512Gb NVMe SSD
  • 100Mbit Unmetered
  • $292/мес

И самое приятное — скидки! При заказе сервера на 3 месяца получите 50% скидки на первый месяц
host4.biz/ru/servers/dedicated/poland/ds-pl-2

20% от INXY серверов во время огромной мартовской продажи!



Получите 20% скидку на серверах INXY в течение огромного марта продажи!
Скоро весна, и мы готовы приветствовать его с огромным марта продажи!

Экономия до 20% на топ класса выделенных серверов от INXY которые все подключенные к Tier 1 интернет-провайдеров и предлагают выделенные каналы в дополнение к сорту новое оборудование, что делает его должны купить на себе!

Вот список серверных вариантов цен на которые собираются Обвал в течение предстоящих 10 дней продажи:
  • DELL R210 II, 1xE3-1270, 32 Гб оперативной памяти, 2x300GB SAS, 100 Mbps 5 IP всего за 100 долларов США.
  • DELL R510, 2xE5630, 16 Гб ОЗУ, 2x300GB SAS + SATA 2x2TB, 100 Mbps, 5 IP — всего за 130 долларов США.
  • DELL R420, 2xE5-2430, 64GB ОЗУ, 2x300GB SAS, 100 Mbps, 5 IP — всего за 150 долларов США.


Нажмите на кнопку ниже, чтобы оформить заказ на любой из них и поторопиться, так как эта сделка доступна только до 15-го марта!
inxy.hosting/dedicated-servers/

Будьте в курсе новостей сервисов Облака



Мы запускаем дайджест новостей о сервисах платформы. Каждый месяц мы будем рассказывать вам о том, какие новые сервисы и функциональности доступны в Облаке и какие сценарии реализации проектов разработали наши специалисты.
Поехали!


Разнообразие новых сервисов в Яндекс.Облаке
В Облаке появились новые сервисы в альфа-версиях — их можно протестировать уже сегодня. Вы не платите за использование сервисов в альфа-версии, но помните про ограничения в условиях обслуживания: в тестовых сервисах отсутствует SLA, и мы не рекомендуем использовать ваши настоящие данные. Чтобы протестировать сервисы в работе, активируйте аккаунт в Облаке и заполните заявку на сайте.


Yandex Load Balancer α
Сервис для равномерного распределения сетевой нагрузки по виртуальным машинам. Это поможет обеспечить отказоустойчивость вашего приложения.
cloud.yandex.ru/services/load-balancer


Yandex Instance Groups α
Компонент сервиса Yandex Compute Cloud для управления группами однотипных виртуальных машин.
cloud.yandex.ru/services/instance-groups


Yandex Managed Service for Redis * α
Сервис для создания кластеров баз данных и их управления на основе СУБД Redis. Часто используется для систем анализа контента в реальном времени.
cloud.yandex.ru/services/managed-redis


Yandex Managed Service for MySQL α
Сервис для создания кластеров БД и их управления на основе СУБД MySQL. В MySQL можно разместить бэкенд веб-проекта или данные CMS.
cloud.yandex.ru/services/managed-mysql


Yandex Message Queue α
Сервис для обмена сообщениями между приложениями.
cloud.yandex.ru/services/message-queue


Yandex Container Registry α
Сервис для хранения и развертывания Docker‑образов и их управления в инфраструктуре Яндекс.Облака.
cloud.yandex.ru/services/container-registry

Новые возможности сервисов Яндекс.Облака

Yandex Object Storage
Теперь можно добавлять файлы в холодное хранилище через указание класса хранилища как STORAGE_IA или NEARLINE.
cloud.yandex.ru/docs/storage/concepts/storage-class
Появилась поддержка CORS — кросс-доменных запросов к объектам в корзине.
cloud.yandex.ru/docs/storage/cors/setup


Yandex Virtual Private Cloud
Открыты 465 и 587 порты для размещения электронной почты в Облаке.
cloud.yandex.ru/docs/vpc/concepts/network


Сценарии
В документации описан сценарий работы с тестовыми средами через GitLab CI
cloud.yandex.ru/docs/solutions/testing/ci-for-snapshots
Представлен сценарий работы с системой управления инфраструктурой Terraform
cloud.yandex.ru/docs/solutions/infrastructure-management/terraform-quickstart


Инструменты управления
В разделе Биллинг консоли управления появился раздел Детализация — теперь вы можете визуализировать потребление облачных сервисов с помощью графиков.
cloud.yandex.ru/docs/billing/operations/check-charges


Управление базами данных
Теперь после создания кластера базы данных можно изменить класс хостов, увеличить размер хранилища и настроить серверы БД.
Подробнее об этом читайте в инструкциях:
Managed Service for PostgreSQL
Managed Service for ClickHouse
Managed Service for MongoDB


Вебинары
Навыки Алисы в Яндекс.Облаке
www.youtube.com/watch?v=54nfwe5jfcU
Курс «Платформа и сервисы»
www.youtube.com/watch?v=VpJJ8VsleBI

ClouDNS выпускает LiveChat, новые узлы отказоустойчивых и многие другие



В прошлом году наша команда более чем вдвое, и мы подготовили что-то новое и что-то большее! Мы празднуем 9-й День рождения, давая всем нашим клиентам некоторые заслуженные подарки:
  • 24/7 чат поддержки, нет необходимости позвонить нам, напишите сообщение и давайте поговорим! Поддержка чат доступен как для платных и бесплатных аккаунтов в меню поддержки.
  • Новый DNS Failover и мониторинга узлов в 28 местах по всему миру. Смотрите полный список в нашей документации.
  • Эксклюзивное предложение для DDoS защиты DNS всего за $ 0,99 / месяц. Войдите в свой аккаунт, чтобы увидеть все детали.

Спасибо за то, что лояльный ClouDNS Клиента в течение всех лет, мы тебя любим!
Оставайтесь в курсе. У нас есть большие планы на 2019 год!

С Уважением, Боян Пейчев
Генеральный директор, ClouDNS

www.cloudns.net

Добро пожаловать на новый DigitalOcean Marketplace


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

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

Как DigitalOcean Marketplace упростит рабочий процесс?
  • Модернизировать вашу облачную инфраструктуру с помощью инструментов и компонентов с открытым исходным кодом компании вы любите (и тех, кто ждет, чтобы быть обнаруженным).
  • Попрощайтесь с ручной настройкой и конфигурацией, так что вы можете сосредоточиться на том, что вы строите, а не как строить.
  • Принесите свои большие идеи в жизнь еще быстрее с 1-Click Программы, которые позволяют развертывать полностью протестированные среды приложений с помощью нажатия одной кнопки.

marketplace.digitalocean.com