Переезд на новые серверные мощности — это всегда ответственный процесс, который часто преподносит неприятные сюрпризы в виде резкого снижения производительности. В данной ситуации мы столкнулись с классическим случаем: после перехода на арендованные серверы обмен данными между 1С:Комплексная автоматизация 2 (КА2) и 1С:Розница 2 (РТ2) замедлился настолько, что загрузка 7 тысяч документов стала занимать до 6 часов. Проанализируем ситуацию, выявим "узкие места" и определим последовательность действий для восстановления нормальной работы систем.
Одной из главных причин деградации производительности стал перенос операционной системы и SQL Server на HDD, несмотря на то, что сами файлы базы данных остались на SSD. Рассмотрим, почему это критично для 1С:
TempDB располагается в системном каталоге SQL Server. При выполнении обменов, особенно через механизмы EnterpriseData, 1С активно создает временные таблицы. Если TempDB находится на медленном HDD, любая операция записи во временные таблицы становится "бутылочным горлышком".Commit транзакции требует физической записи в лог. Время отклика (latency) у HDD в десятки раз выше, чем у SSD.Решение: Обязательно перенесите TempDB и файлы журналов транзакций (.ldf) всех баз данных на SSD. Убедитесь, что системный раздел с файлом подкачки также не перегружен запросами к диску.
В сообщениях упоминается, что новые процессоры "чуть хуже по частоте и кэшу". Для платформы 1С:Предприятие 8.3 тактовая частота ядра имеет решающее значение. Выясним причину: архитектура 1С во многом полагается на однопоточные вычисления при выполнении бизнес-логики (проведение документов, расчеты). Даже небольшое снижение частоты (например, с 3.5 ГГц до 2.8 ГГц) может дать ощутимое замедление на больших объемах данных.
Проверьте настройки электропитания на новом сервере. Часто арендованные сервера приходят с профилем Balanced, что заставляет процессор сбрасывать частоту. Установите профиль High Performance (Максимальная производительность) в настройках Windows и BIOS/UEFI.
Забытая индексация базы — это критическая ошибка. В 1С:КА 2, которая построена на метаданных ERP, таблицы содержат миллионы записей. Без актуальных индексов SQL Server вынужден выполнять Index Scan или Table Scan (полный перебор), что при загрузке 7000 документов убивает производительность.
Разберем по шагам, что нужно сделать в SQL Server Management Studio (SSMS):
Используйте следующий скрипт для принудительного обновления статистик:
USE [Имя_Вашей_Базы];
GO
EXEC sp_updatestats;
GO
Нужно понимать, что 1С:Комплексная автоматизация 2 — это тяжелое решение. В отличие от старых версий (УТ 10.3 или БП 2.0), здесь при записи документа происходит масса дополнительных действий. Рассмотрим подробнее:
При переезде часто забывают о тонкой настройке SQL Server. Рассмотрим параметры, которые могут влиять на блокировки и тормоза:
1. Это предотвращает ситуацию, когда один тяжелый запрос захватывает все ядра процессора, вызывая простои других процессов.rphost (сервера приложений 1С).Чтобы не гадать, используем инструменты замера производительности. Разберем план действий:
PhysicalDisk \ Avg. Disk Queue Length (длина очереди к диску) и Processor \ % Processor Time. Если очередь к диску выше 2 — диски не справляются.DBMSSQL и EXCP. Это покажет, какие именно SQL-запросы выполняются дольше всего.ПриЗаписи, ОбработкаПроведения) система "висит" дольше всего.Ситуация, когда бухгалтерия хочет считать себестоимость, а админ — грузить обмены, требует жесткого регламента. Посмотрим на возможные пути оптимизации:
Итог: Проблема носит комплексный характер. Первоочередная задача — вернуть TempDB и логи на SSD, выполнить полный ребилд индексов и настроить MAXDOP. После этого необходимо провести замер производительности и убедиться, что дисковая очередь пришла в норму.