К статье
Практический материал

Администрирование · 9 мин

Что хранится в кэше 1С и как его очистить

Разбираем, что хранится в кэше 1С: метаданные, скомпилированные модули, временные файлы. Где находится кэш, как его безопасно очистить и когда это нужно.

Кэш 1С — это набор временных файлов, которые платформа создаёт на компьютере пользователя или на сервере, чтобы ускорить запуск и работу информационной базы. Вместо того чтобы при каждом обращении заново читать конфигурацию из базы данных, платформа сохраняет подготовленные данные локально и использует их повторно. Благодаря этому формы открываются быстрее, а модули не компилируются заново при каждом запуске.

Проблема в том, что кэш может устареть или повредиться. Тогда возникают характерные симптомы: ошибки формата потока, «фантомные» сообщения об объектах, которых уже нет в конфигурации, расхождение поведения программы у разных пользователей одной базы. В таких ситуациях очистка кэша — первое и самое безопасное действие диагностики, потому что оно не затрагивает сами данные информационной базы.

Важно понимать: в кэше не хранятся документы, справочники, проводки и другие прикладные данные. Всё это находится в самой базе (файл 1Cv8.1CD для файлового режима или в СУБД для клиент-серверного). Удаление кэша не приводит к потере учётных данных — в худшем случае следующий запуск базы займёт больше времени, пока кэш формируется заново.

Что именно платформа сохраняет в кэше

Содержимое кэша условно делится на несколько групп. Первая — кэш метаданных: сериализованное представление структуры конфигурации (объекты, реквизиты, формы, макеты). Платформа читает его при запуске вместо полного разбора конфигурации из базы. Вторая группа — скомпилированные модули: байт-код встроенного языка 1С, который формируется при первом обращении к модулю и затем подхватывается из кэша.

Третья группа — клиентские настройки и временные файлы: параметры форм, размеры и положение окон, настройки отчётов, история ввода, временные файлы печатных форм и выгрузок. Часть этих данных хранится в профиле пользователя операционной системы, часть — в самой базе (например, настройки в хранилище системных настроек).

Для клиент-серверного режима существует ещё серверный кэш: рабочие процессы сервера 1С держат в памяти и в каталоге srvinfo скомпилированные модули, данные сеансов и служебные структуры. Его повреждение проявляется уже на уровне всех пользователей базы, а не одного клиента.

Где находится кэш на компьютере пользователя

В Windows кэш тонкого и толстого клиента располагается в профиле пользователя. Основные каталоги — %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8. Внутри находятся папки с именами в виде длинных идентификаторов (GUID) — каждая соответствует конкретной информационной базе из списка. Именно в этих папках лежит кэш метаданных и модулей конкретной базы.

text
%APPDATA%\1C\1cv8\<GUID базы>
%LOCALAPPDATA%\1C\1cv8\<GUID базы>
%APPDATA%\1C\1cv8\conf\ — настройки списка баз и интерфейса

На сервере 1С кэш находится в каталоге srvinfo (обычно C:\Program Files\1cv8\srvinfo или путь, заданный при установке). Внутри — папки reg_1541 и подобные, где хранятся сеансовые данные и кэш кластера. Очищать их вручную следует только при остановленной службе агента сервера.

Для файловых баз, опубликованных на веб-сервере, кэш формируется и на стороне веб-клиента в профиле браузера. Если проблема возникает только в браузере, иногда достаточно очистить кэш браузера, не трогая каталоги платформы.

Признаки, что проблема именно в кэше

Типичный сценарий: после обновления конфигурации у одного пользователя программа выдаёт ошибку, а у остальных всё работает. Или база, которая нормально открывается у коллег, у конкретного сотрудника падает с «Ошибкой формата потока». Это почти всегда указывает на повреждённый локальный кэш, а не на данные базы.

Ошибка формата потокаПовреждён кэш базы

Возникает у одного пользователя или на одном ПК

Ошибка только после обновленияУстаревший кэш метаданных

Платформа использует старый образ конфигурации

Проблема у всех пользователей сервераСерверный кэш или сама база

Проверять srvinfo и тестирование базы

Медленный первый запуск после очисткиНорма

Кэш формируется заново, далее скорость восстановится

Другие симптомы: «фантомные» объекты в интерфейсе, которых нет в конфигураторе; отчёт показывает старую форму после её изменения; сообщение о несовпадении версии метаданных. Общий признак — проблема привязана к компьютеру или пользователю, а не к базе в целом.

Как безопасно очистить кэш

Самый мягкий способ — удалить базу из списка в стартовом окне 1С и добавить её заново с тем же путём. При этом кэш этой базы удаляется, а данные остаются нетронутыми. Способ подходит, когда нужно сбросить кэш одной конкретной базы и не трогать остальные.

Ручная очистка кэша одной базы
  1. 1
    Закройте все сеансы 1С на компьютере
  2. 2
    Откройте %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8
  3. 3
    Найдите папку с GUID нужной базы (сверьте по дате изменения или удалите базу из списка заранее — папка пропадёт)
  4. 4
    Удалите папку с GUID
  5. 5
    Запустите базу заново и дождитесь формирования кэша

Альтернатива — запуск конфигуратора с параметром /ClearCache в командной строке, который очищает кэш клиентского приложения для указанной базы. Для серверного кэша применяют перезапуск службы «Агент сервера 1С:Предприятия»; в тяжёлых случаях — остановку службы и удаление содержимого srvinfo (кроме файлов списка баз, если вы не уверены в их восстановлении).

Чего очистка кэша не решит

Очистка кэша не лечит повреждения самой информационной базы. Если «ошибка формата потока» возникает у всех пользователей и после полной очистки кэша на всех машинах, причина, скорее всего, в файле базы — тогда нужны тестирование и исправление (chdbfl для файловых баз, средства СУБД для клиент-серверных) или восстановление из резервной копии.

Также кэш не влияет на логические ошибки конфигурации: неправильные проводки, ошибки в коде модулей, неверные настройки прав. Если программа стабильно считает что-то не так у всех пользователей, искать причину нужно в конфигурации и данных, а не во временных файлах.

Маршрут решения

Как выбрать действие

Ошибка у одного пользователя на одном ПКОчистите локальный кэш этой базы
Ошибка у всех пользователей сервера после обновленияПерезапустите агент сервера, при необходимости очистите srvinfo
Ошибка сохраняется после очистки кэша вездеЗапустите тестирование и исправление базы, проверьте резервные копии
Проблема только в браузереОчистите кэш браузера и куки для адреса публикации

Профилактика и типичные ошибки

Кэш чаще всего повреждается при аварийном завершении работы: отключение электричества, принудительное завершение процесса 1С, сбой сети при работе с сетевым диском. Размещение файловых баз на сетевых дисках без корректной настройки блокировок — частый источник одновременных повреждений и кэша, и базы.

Типичные ошибки
01
Удаление всего профиля пользователя Windows вместо папки кэша — теряются настройки других программ
02
Очистка srvinfo при работающем сервере — обрыв сеансов и риск рассинхронизации кластера
03
Повторная очистка кэша при повреждённой базе вместо тестирования и исправления — потеря времени, проблема возвращается
04
Хранение файловой базы на сетевом диске — регулярные повреждения кэша и самой базы

Полезная практика — регламентный перезапуск сервера 1С и контроль свободного места на дисках, где лежат профили пользователей и srvinfo: при переполнении диска кэш записывается с ошибками. Для терминальных серверов имеет смысл периодически очищать кэш у неактивных профилей, чтобы он не разрастался.

Итог

Что важно запомнить

Кэш 1С содержит только служебные данные: образ конфигурации, скомпилированные модули и настройки интерфейса. Очистка кэша безопасна для учётных данных и устраняет большинство ошибок формата потока у отдельных пользователей. Если ошибка сохраняется после очистки — проверяйте саму базу.

Частые вопросы

Пропадут ли данные, если удалить кэш 1С?

Нет. Документы, справочники, отчёты и настройки учёта хранятся в информационной базе, а не в кэше. После удаления кэша база просто дольше запустится в первый раз, пока платформа сформирует временные файлы заново.

Как узнать, какая папка с GUID относится к нужной базе?

Самый простой способ — удалить базу из списка в стартовом окне 1С: её папка кэша будет удалена автоматически. Либо ориентируйтесь по дате изменения папок — у активно используемой базы она свежая.

Нужно ли очищать кэш после каждого обновления конфигурации?

Обычно нет — платформа сама отслеживает смену версии конфигурации и обновляет кэш. Ручная очистка нужна только при появлении ошибок: несовпадение версий метаданных, ошибка формата потока, «фантомные» объекты.

Почему после очистки кэша база стала запускаться дольше?

Это нормально: платформа заново читает конфигурацию и компилирует модули. После одного-двух запусков кэш сформируется, и скорость вернётся к прежнему уровню.

Чем очистка кэша отличается от тестирования и исправления?

Очистка кэша удаляет временные файлы на клиенте или сервере и не затрагивает базу. Тестирование и исправление проверяет и восстанавливает структуру самой базы данных. Сначала всегда пробуют кэш — это быстрее и безопаснее.

Можно ли автоматизировать очистку кэша для всех пользователей?

Да, администраторы часто используют скрипты, удаляющие каталоги кэша в профилях пользователей, или групповые политики. Важно выполнять очистку при закрытых сеансах 1С и не удалять лишнего — только папки с GUID баз в каталогах 1cv8.