← На главную
Обновление крупных типовых конфигураций 1С (таких как «1С:Управление торговлей», «1С:ERP», «1С:Комплексная автоматизация») нередко занимает длительное время — от нескольких часов до целой ночи. Весь процесс обновления состоит из двух ключевых фаз: реструктуризации базы данных в Конфигураторе и выполнения обработчиков данных (БСП) в режиме «1С:Предприятие». Разберем комплекс мер, позволяющих существенно сократить время простоя базы на обоих этапах.
1. Оптимизация дисковой подсистемы и файлов СУБД
Основным узким местом при массовой записи данных и перестроении таблиц обычно выступает дисковая подсистема. Проанализируем рекомендации по настройке расположения файлов базы данных и временных каталогов:
- Использование быстрых SSD/NVMe-дисков: Все активные файлы базы данных (
.mdf) и журнала транзакций (.ldf) должны располагаться на твердотельных накопителях.
- Разнесение файлов по физическим дискам: В идеальном сценарии файл данных и файл журнала транзакций разносятся на разные физические накопители, чтобы очереди дисковых операций записи и чтения не блокировали друг друга.
- Каталоги временных файлов сервера 1С и ОС: Папки временных файлов (каталог
Temp ОС и рабочий каталог кластера серверов 1С) должны находиться на максимально быстрых дисках. В процессе реструктуризации платформа активно создает промежуточные кэши и таблицы.
- Настройка базы TempDB в MS SQL: Создайте несколько файлов данных базы
TempDB одинакового начального размера (рекомендуется по числу физических ядер процессора, но не более 8 файлов). Это предотвращает взаимные блокировки при интенсивном выделении страниц памяти под временные таблицы.
- Модель восстановления Simple: Убедитесь, что база данных переведена в простую модель восстановления (
Simple), чтобы журнал транзакций не разрастался до гигантских объемов.
2. Настройка серверного окружения и операционной системы
Перед запуском масштабного обновления целесообразно временно отключить вспомогательные службы, создающие накладные расходы на процессор и диск:
- Схема электропитания: На сервере 1С и сервере СУБД обязательно установите схему управления питанием ОС в режим «Высокая производительность» (High Performance). Энергосберегающие режимы снижают тактовую частоту процессора при однопоточных операциях, что напрямую замедляет реструктуризацию.
- Антивирусная защита: Полностью отключите антивирусное ПО на время обновления либо добавьте каталоги баз данных SQL, каталоги сервера 1С и временные папки в исключения сканирования в реальном времени.
- Мгновенная инициализация файлов (Instant File Initialization): Предоставьте учетной записи службы MS SQL право в локальной политике безопасности
Perform Volume Maintenance Tasks («Выполнение задач по обслуживанию томов»). Это избавит SQL Server от необходимости заполнять нулями дисковое пространство при авторасширении файлов данных.
- Предварительное расширение файлов базы: Перед началом обновления вручную увеличьте размер файлов
.mdf и .ldf на ожидаемый объем прироста. Это исключит микропаузы на пошаговое авторасширение в моменты пиковой нагрузки.
3. Оптимизация этапа реструктуризации в Конфигураторе
Если требуется перейти через несколько промежуточных версий конфигурации (например, при переходе между редакциями), рассмотрим эффективный порядок обновления метаданных:
- Обновление через единый файл конфигурации (.cf): Последовательное применение нескольких обновлений
.cfu на рабочей базе приводит к многократной реструктуризации одних и тех же таблиц. Правильный подход: выполнить последовательное обновление на тестовой копии, сохранить итоговый файл .cf и на рабочей базе выполнить однократное объединение/загрузку конфигурации.
- Параллельная реструктуризация таблиц: В современных версиях платформы 1С:Предприятие 8.3 поддерживается многопоточная реструктуризация таблиц базы данных. Включение параллельного режима позволяет задействовать все доступные ядра процессора и завершить этап перестроения структуры таблиц в несколько раз быстрее.
4. Ускорение этапа выполнения отложенных обработчиков БСП
После успешного обновления конфигурации в Конфигураторе первый запуск базы инициирует процедуры обновления данных. Выясним, как оптимизировать эту фазу:
- Настройка количества фоновых потоков: В интерфейсе администрирования перейдите в раздел «Обслуживание» → «Результаты обновления программы». Увеличьте приоритет и количество одновременно выполняемых фоновых заданий обновления, чтобы загрузить серверные мощности на максимум.
- Временная блокировка регламентных заданий: Перед запуском обновления заблокируйте выполнение фоновых задач, не связанных с обновлением (индексация полнотекстового поиска, регламентные обмены, расчеты итогов), чтобы освободить ресурсы для обработчиков обновления.
- Открытие доступа пользователям при отложенном обновлении: Большинство современных конфигураций позволяют пользователям начать работу сразу после завершения обязательных стартовых процедур, в то время как тяжелые отложенные обработчики продолжают выполняться в фоновом режиме по расписанию.
5. Мониторинг узких мест производительности
Если процесс обновления по-прежнему идет слишком медленно, проанализируйте системные показатели в диспетчере задач и мониторе ресурсов ОС:
- Длина очереди диска: Если параметр «Текущая длина очереди диска» стабильно превышает значение 2 на диске с базой или логом, дисковая подсистема является главным ограничителем скорости.
- Загрузка оперативной памяти: Убедитесь, что серверу СУБД и рабочим процессам 1С хватает физической оперативной памяти и операционная система не сбрасывает данные в файл подкачки (paging).
- Загрузка процессорных ядер: Высокая утилизация одного ядра при простое остальных указывает на выполнение однопоточного обработчика, требующего максимальной базовой частоты процессора.