my.cnf под 1С-Битрикс: выполнение всех требований теста производительности
Готовый my.cnf файл с полным соответствием критериям «Монитора производительности» 1С-Битрикс: transaction-isolation, strict mode, innodb буферы.
Интерактивный генератор под ваши параметры
Параметры подставляются в код в реальном времени
/etc/mysql/conf.d/bitrix.cnf
# /etc/mysql/conf.d/bitrix.cnf
[mysqld]
# Строгие требования теста производительности 1С-Битрикс
transaction-isolation = READ-COMMITTED
innodb_strict_mode = OFF
sql_mode = ""
# Кодировки UTF-8 MB4
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
# Буферный пул InnoDB (60% RAM)
innodb_buffer_pool_size = 5G
innodb_buffer_pool_instances = 4
innodb_log_file_size = 1G
innodb_log_buffer_size = 64M
innodb_flush_log_at_trx_commit = 2
innodb_flush_method = O_DIRECT
# Размеры пакетов под выгрузки 1С
max_allowed_packet = 128M
tmp_table_size = 128M
max_heap_table_size = 128M
table_open_cache = 8000
table_definition_cache = 4000
max_connections = 250
wait_timeout = 60
interactive_timeout = 60
Разбор ключевых директив конфигурации
Техническое обоснование директив и их прямое влияние на процессор (CPU), оперативную память (RAM) и дисковый ввод-вывод (NVMe I/O).
| Директива / Блок | Рекомендуемое значение | Зачем нужно и системное влияние (CPU / RAM / I-O) |
|---|---|---|
transaction-isolation = READ-COMMITTED |
READ-COMMITTED | Обязательное требование Битрикс: снижает уровень блокировок строк до минимума, предотвращая взаимные дедлоки (deadlocks). |
innodb_strict_mode = OFF |
OFF | Предотвращает ошибки создания таблиц Битрикс со старыми форматами строк ROW_FORMAT=COMPACT. |
pm.max_requests |
500 - 1000 | Периодически перезапускает PHP-воркеры после обработки N запросов, предотвращая утечки оперативной памяти (Memory Leak). |
request_terminate_timeout |
180s | Принудительно убивает зависшие PHP-скрипты, защищая пул от полного исчерпания свободных процессов при тяжелых SQL-запросах. |
Рекомендуемые системные требования VDS под этот стек
Расчет минимальной и оптимальной конфигурации виртуального сервера для стабильной работы без сбоев.
Оптимальный сайзинг: 4 vCPU, 8 GB RAM, 100 GB NVMe
Расчетная нагрузка: Интернет-магазин Битрикс 30 000 SKU + 1С интеграция
4 CPU / 8 GB NVMe
Timeweb Cloud
Рекомендуемые ресурсы
4 vCPU (3.5+ GHz) /
8 GB RAM /
100 GB NVMe
4 vCPU / 8 GB RAM
Selectel
Рекомендуемые ресурсы
4 vCPU (3.5+ GHz) /
8 GB RAM /
100 GB NVMe
Turbo 8 GB
Beget
Рекомендуемые ресурсы
4 vCPU (3.5+ GHz) /
8 GB RAM /
100 GB NVMe
Онлайн-утилиты SysKit для проверки этого сервера
Протестируйте корректность применения конфигурации прямо сейчас в один клик.
Частые ошибки при настройке и их решение (FAQ)
Типовые проблемы вебмастеров и сисадминов при внедрении данной конфигурации.
Тест производительности Битрикс выдает ошибку уровня изоляции транзакций
В секцию `[mysqld]` добавьте `transaction-isolation = READ-COMMITTED` и перезапустите службу: `systemctl restart mariadb`.
Как понять, что пулу PHP-FPM не хватает памяти?
В логе `/var/log/php-fpm.log` появляется предупреждение `server reached pm.max_children setting, consider raising pm.max_children`. Также команда `dmesg | grep oom` покажет OOM-киллер.
Нужно ли перезагружать службу после изменения параметров?
Да, для применения настроек выполните: `systemctl restart php8.2-fpm` (или вашу версию PHP) и `systemctl restart mysql`.
Рекомендуемые смежные конфигурации
Дополнительные рецепты и калькуляторы для полной оптимизации данного серверного стека.