Одной из наиболее распространенных и неприятных проблем при эксплуатации сервера 1С:Предприятие является неконтролируемое разрастание каталога временных файлов (обычно расположенного по пути C:\Users\USR1CV8\AppData\Local\Temp). В некоторых случаях объем этой папки может увеличиваться на десятки гигабайт всего за несколько часов, что приводит к полной остановке работы сервера из-за отсутствия свободного места на диске. Рассмотрим подробнее причины этого явления и разберем по шагам методы борьбы с ним.
Проанализируем ситуацию, когда количество информационных баз на сервере превышает стандартные настройки кластера. В параметрах рабочего сервера существует важный показатель — «Количество ИБ на процесс». По умолчанию он равен 8. Если у вас развернуто, например, 12 баз, сервер может начать некорректно распределять ресурсы, что ведет к аномальному росту кэша.
Для исправления ситуации выполним следующие действия:
Важно: Это изменение может незначительно снизить общую производительность, так как увеличится нагрузка на один процесс rphost, но зачастую это останавливает бесконтрольный рост временных файлов, вызванный конкуренцией процессов за доступ к данным.
Выясним причину, связанную с механизмами индексации. Полнотекстовый поиск — это полезная функция, но на крупных или активно обновляемых базах процесс индексации может создавать огромные временные файлы. Если поиск не является критически важным для пользователей, его стоит отключить.
Рассмотрим, как это сделать программно или через интерфейс:
Часто проблема кроется в «кривом» коде конфигурации или внешних обработок. Если разработчик использует методы создания временных файлов, но не вызывает принудительное удаление (например, не использует УдалитьФайлы()), то при любом аварийном завершении сеанса или сбое процесса rphost эти файлы остаются «мусором» в системе.
Проанализируем ситуацию с обменами данными. Если настроен частый обмен (например, каждые 5 минут), и в процессе обмена формируются пакеты данных большого объема (Message_XXX.xml), они могут оседать в папке Temp. Попробуем временно отключить регламентные задания и понаблюдать за динамикой роста каталога. Если рост прекратился — необходимо проводить аудит конкретного фонового задания.
Разберем технический нюанс взаимодействия 1С с операционной системой. Сервер 1С создает временный файл, работает с ним и по завершении операции посылает команду на удаление. Если в этот момент антивирус сканирует данный файл, операционная система блокирует его, и команда удаления игнорируется. Процесс 1С «считает», что задача выполнена, и больше не предпринимает попыток очистки.
Решение: Добавим папку C:\Users\USR1CV8\AppData\Local\Temp\ и исполняемые файлы rphost.exe, rmngr.exe в исключения антивирусного сканера.
Как показывает практика, проблема часто проявляется после обновления платформы (например, в ветках 8.3.17 или 8.3.20). Это может быть связано с утечками памяти или некорректной работой механизма vrs-cache (кэш веб-сервисов). В более новых релизах (например, начиная с 8.3.18.1959 и выше) многие из этих ошибок были исправлены, и файлы стали удаляться автоматически по завершении сеанса.
Если причину роста установить не удается или она связана с особенностями работы бизнес-логики, которую нельзя изменить, можно настроить автоматическую очистку. Посмотрим на пример простого .bat файла, который можно добавить в планировщик задач Windows и запускать в часы минимальной нагрузки (предварительно убедившись, что служба 1С остановлена или нет активных сеансов):
@echo off
set "temp_path=C:\Users\USR1CV8\AppData\Local\Temp"
pushd "%temp_path%"
del /s /q /f *.*
for /d %%p in (*) do rd /s /q "%%p"
popd
Важно: Принудительная очистка при работающем сервере может привести к ошибкам в текущих сеансах пользователей, так как 1С может потерять доступ к данным, которые ей необходимы в данный момент.
Если ваша база активно публикуется через веб-сервер (IIS или Apache) или используется интерфейс OData, обратите внимание на подпапки vrs-cache внутри Temp. Каждое соединение через веб-сервис создает свой кэш метаданных. При большом количестве кратковременных подключений этот объем растет лавинообразно. В таких случаях помогает только регулярный перезапуск службы 1С (например, раз в сутки ночью), так как именно при остановке службы сервер 1С инициирует глобальную очистку своих временных объектов.
Подводя итог, для решения проблемы рекомендуем действовать по следующему алгоритму: сначала исключить влияние антивируса, затем обновить платформу до актуального стабильного релиза, и только после этого приступать к тонкой настройке параметров кластера и анализу регламентных заданий.