При администрировании серверов 1С в файловом режиме часто возникает ситуация, когда дисковая подсистема разделена: базы данных лежат на высокоскоростном накопителе, а сама операционная система и установленные платформы — на более старом и медленном диске. Давайте подробно проанализируем, даст ли практический эффект перенос исполняемых файлов платформы на новый SSD, выясним реальные причины замедления работы файловых баз и разберем по шагам комплекс мер для кардинального ускорения системы.
Для начала разберем физику процесса запуска и работы платформы 1С:Предприятие. Когда пользователь дважды кликает по ярлыку программы, операционная система Windows Server обращается к диску, на котором установлена платформа (например, в каталог C:\Program Files\1cv8\), считывает исполняемый файл 1cv8.exe и связанные динамические библиотеки .dll, после чего загружает их в оперативную память сервера.
Современные операционные системы семейства Windows Server эффективно используют механизм системного кэширования (File System Cache). Это означает следующее:
Таким образом, перенос каталога установки платформы 1С на более быстрый SSD никак не повлияет на скорость проведения документов, построения отчетов или групповой обработки данных. Единственное изменение, которое вы заметите — незначительное сокращение времени от момента клика по ярлыку до появления диалогового окна выбора информационных баз при самом первом запуске после перезагрузки сервера.
Если сама платформа после старта работает из оперативной памяти, то с файлами данных ситуация обстоит совершенно иначе. Файловая СУБД 1С устроена так, что в процессе работы она постоянно создает, перезаписывает и удаляет огромное количество служебных данных. К ним относятся:
%AppData%\Local\1C\1Cv8 и %AppData%\Roaming\1C\1Cv8.%TEMP%)..lgd), которая крайне чувствительна к скорости случайной записи мелкими блоками.Если профили пользователей терминального сервера (RDP) или системные папки временных файлов расположены на старом медленном диске, вся производительность системы будет упираться именно в скорость работы с этими директориями, даже если сам файл базы данных 1Cv8.1CD расположен на сверхбыстром диске.
Рассмотрим по шагам, как перенаправить дисковую активность временных файлов и профилей пользователей на быстрый накопитель, чтобы получить максимальный прирост быстродействия.
Шаг 1. Перенос профилей пользователей терминалов через символические ссылки
Если у вас нет возможности полностью перенести каталог C:\Users на новый диск стандартными средствами ОС, мы можем воспользоваться механизмом символических ссылок Windows. Для этого необходимо создать перенаправление для папок кэша 1С конкретного пользователя.
Выполним перенос каталога кэша с медленного диска C: на быстрый диск D:. Для этого запустим командную строку от имени администратора и выполним следующую команду:
move "C:\Users\username\AppData\Local\1C" "D:\1C_Profiles\username\AppData\Local\1C"
mklink /d "C:\Users\username\AppData\Local\1C" "D:\1C_Profiles\username\AppData\Local\1C"
Аналогичную операцию рекомендуется проделать и для роуминг-профиля:
move "C:\Users\username\AppData\Roaming\1C" "D:\1C_Profiles\username\AppData\Roaming\1C"
mklink /d "C:\Users\username\AppData\Roaming\1C" "D:\1C_Profiles\username\AppData\Roaming\1C"
Шаг 2. Перенаправление системных переменных временных файлов %TEMP% и %TMP%
По умолчанию временные файлы пользователей хранятся в их профилях на системном диске. Давайте перенесем их на быстрый SSD. Для этого выполним следующие действия:
D:\Temp_RDP\.TEMP и TMP для пользователей, указав путь к созданной директории.Если на вашем сервере под управлением Windows Server 2012 имеется избыточный объем оперативной памяти (например, свободными остаются 16-32 ГБ), мы можем развернуть виртуальный RAM-диск. RAM-диск работает на скоростях оперативной памяти, что обеспечивает минимальные задержки чтения и записи (latency), недостижимые даже для лучших твердотельных накопителей.
Проанализируем этот сценарий по шагам:
%TEMP% всех терминальных пользователей на этот виртуальный диск R:.При таком подходе формирование сложных отчетов, требующих создания огромных временных таблиц платформы 1С, будет происходить практически мгновенно.
Часто виновником низкой производительности файловых баз 1С на SSD является антивирусное программное обеспечение. Антивирус блокирует и сканирует каждый мелкий временный файл, создаваемый платформой, сводя на нет преимущества быстрого накопителя.
Чтобы исключить этот фактор, настроим список исключений в вашем антивирусном продукте. Необходимо добавить в исключения:
1cv8.exe, 1cv8c.exe, 1cv8s.exe.*.1CD, *.1CL.*.lgf, *.lgp, *.lgd.AppData\Local\1C\1Cv8\ и AppData\Roaming\1C\1Cv8\.TEMP).Как мы уже упоминали, новый журнал регистрации работает на базе встроенного движка SQLite. Когда база данных активно используется множеством терминальных пользователей, файл журнала регистрации (с расширением .lgd) начинает сильно фрагментироваться и разрастаться.
Для оптимизации работы журнала регистрации рекомендуется:
Не менее важным фактором является режим энергосбережения операционной системы. По умолчанию в Windows Server 2012 часто активна сбалансированная схема электропитания. В этом режиме частота процессора динамически снижается при отсутствии пиковых нагрузок, а шина PCIe и дисковый контроллер могут переходить в состояния пониженного энергопотребления. Из-за этого SSD не успевает раскрыть свой скоростной потенциал на коротких операциях чтения-записи 1С.
Для исправления ситуации выполним следующие действия:
Помните, что высокая физическая скорость чтения с SSD может нивелироваться «логическим хаосом» внутри самой базы данных. В процессе интенсивной работы (удаление объектов, перепроведение документов) таблицы базы данных фрагментируются. Для упорядочивания структуры файла базы данных необходимо регулярно проводить техническое обслуживание.
Запустим конфигуратор 1С в монопольном режиме и перейдем в меню "Администрирование" — "Тестирование и исправление". Обязательно выберем режим "Сжатие таблиц информационной базы". Данная процедура удаляет «мусорные» пустые записи из файла базы данных, перестраивает индексы и физически уменьшает размер файла 1Cv8.1CD на диске, повышая скорость обращения платформы к таблицам.
Резюме: Перенос самой платформы 1С на быстрый SSD лишен практического смысла из-за алгоритмов работы кэша ОС Windows. Вместо этого сосредоточьте усилия на переносе пользовательских кэшей, временных папок на быстрый накопитель (или RAM-диск), тонкой настройке антивируса, переходе в режим высокой производительности сервера и регулярном обслуживании структуры файловой базы данных.