Кэш платформы 1С: где лежит, когда мешает и как его сбросить

· 9 мин

Содержание

Чистка кэша не ускоряет 1С сама по себе. Это частое заблуждение. Кэш как раз и нужен, чтобы программа работала быстрее. Очищать его стоит только тогда, когда он устарел или повредился: после обновления конфигурации форма показывает старые данные, база «не видит» изменения или платформа падает при открытии конкретного окна.

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

Что такое кэш 1С и зачем платформе нужны эти файлы

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

Что это даёт на практике:

  • ⚡ форма открывается быстрее, потому что описание берётся с локального диска;
  • 🌐 в клиент-серверном варианте меньше обращений по сети;
  • 🧠 повторные вызовы серверных функций с теми же параметрами не гоняют данные лишний раз;
  • 📋 списки выбора и подсказки показываются без задержки.

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

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

Где физически лежат файлы кэша

Кэш клиента хранится в профиле пользователя Windows. Папок две, и обе нужны, когда вы чистите вручную.

ЧтоПуть в WindowsЧто внутри
Локальный кэш%LOCALAPPDATA%\1C\1cv8папки с именами-идентификаторами баз, кэш форм и метаданных
Роуминговый кэш%APPDATA%\1C\1cv8настройки и часть служебных файлов, которые могут «ездить» с профилем
Временные файлы%TEMP%файлы, которые создаёт платформа во время работы

Вставьте путь в адресную строку проводника, и он раскроется под вашу учётную запись. Внутри будут папки вида a1b2c3d4-0000-1111-2222-333344445555. Это идентификаторы информационных баз. Одна папка — одна база.

Рядом лежит каталог %APPDATA%\1C\1CEStart. В нём файл ibases.v8i — список баз, который вы видите в окне запуска. Этот файл при чистке кэша не удаляйте, иначе придётся заново добавлять все базы в список.

В Linux клиентский кэш лежит в домашнем каталоге пользователя, в скрытой папке ~/.1cv8. Логика та же: внутри каталоги по идентификаторам баз.

Кэш на стороне сервера

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

Какие бывают виды кэша и как каждый влияет на работу

Единого «кэша 1С» нет, это несколько разных механизмов. Знать различия полезно: тогда понятно, что именно чистить.

  1. Кэш метаданных и форм. Описание объектов конфигурации и интерфейса. Самая частая причина странностей после обновления.
  2. Кэш клиент-серверных вызовов. Результаты запросов клиента к серверу, которые платформа решила не повторять. Сбрасывается параметром запуска (см. ниже).
  3. Кэш расширений и внешних файлов. Копии расширений конфигурации и внешних отчётов или обработок, подгруженных на клиент.
  4. Оперативная память сеанса. Данные, которые платформа держит в памяти процесса. Живут, пока открыт сеанс, и пропадают при закрытии.
  5. Кэш объектов на сервере. Хранится в рабочих процессах кластера, сбрасывается их перезапуском.

Влияние у всех одно по смыслу, а по симптомам разное. Устаревший кэш форм покажет «старую» форму. Повреждённый кэш вызовов даст зависание или ошибку при определённом действии. А переполненная папка временных файлов просто съест место на системном диске.

Симптомы: как понять, что дело в кэше

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

  • 🔁 после обновления конфигурации форма выглядит по-старому или нет новых полей и команд;
  • ❌ у одного пользователя ошибка, а у соседа за таким же компьютером с той же базой всё работает;
  • 🧊 1С зависает при открытии одного и того же списка или отчёта;
  • 🚪 платформа аварийно закрывается при запуске конкретной базы, а другие базы открываются;
  • 💾 на диске C: внезапно пропало несколько гигабайт, и растёт папка профиля 1С.

Главный диагностический вопрос: воспроизводится ли проблема на другом компьютере или под другим пользователем? Если да, то дело в самой базе или конфигурации, кэш тут ни при чём. Если нет, чистка кэша на проблемном месте — первый и самый дешёвый шаг.

Диагностика: выберите симптом

Как очистить кэш: способы от простого к радикальному

Идите по порядку. Каждый следующий способ грубее предыдущего.

Способ 1. Ярлык с параметром запуска

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

  1. Откройте окно запуска 1С, выделите нужную базу.
  2. Нажмите «Изменить» и перейдите к дополнительным параметрам запуска (экран с параметрами командной строки).
  3. Добавьте параметр /ClearCache.
  4. Запустите базу. После старта параметр можно убрать, чтобы кэш потом работал как обычно.

То же в ярлыке на рабочем столе:

"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /IBName "Бухгалтерия" /ClearCache

Путь к исполняемому файлу у вас может отличаться: он зависит от версии платформы и разрядности. Посмотрите свойства существующего ярлыка и подставьте оттуда.

Способ 2. Удаление папок кэша вручную

Работает, когда параметр не помог или платформа не стартует.

  1. Полностью закройте все окна 1С и проверьте в диспетчере задач, что процессов 1cv8 и 1cv8c нет.
  2. Откройте %LOCALAPPDATA%\1C\1cv8 и удалите папки с идентификаторами баз. Если трогаете только одну базу, удаляйте только её папку.
  3. Повторите то же в %APPDATA%\1C\1cv8.
  4. Не удаляйте ibases.v8i и всё, что лежит в 1CEStart.
  5. Запустите 1С. Первый запуск будет заметно медленнее: кэш строится заново.

Если вы не знаете, какая папка какой базе принадлежит, удаляйте все папки-идентификаторы целиком. Это безопасно, просто первое открытие каждой базы займёт больше времени.

Способ 3. Очистка временных файлов

Здесь освобождают место, а не лечат ошибки. Закройте 1С, нажмите Win+R, введите %TEMP% и удалите содержимое папки. Файлы, занятые другими программами, система удалить не даст, и это нормально, пропускайте их.

Способ 4. Автоматическая очистка скриптом

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

@echo off
taskkill /F /IM 1cv8.exe /IM 1cv8c.exe 2>nul
for /d %%D in ("%LOCALAPPDATA%\1C\1cv8\*") do rd /s /q "%%D"
for /d %%D in ("%APPDATA%\1C\1cv8\*") do rd /s /q "%%D"

Скрипт убивает процессы 1С без сохранения, поэтому запускайте его только когда пользователь вышел из программы. Маска * внутри 1cv8 не затрагивает соседнюю папку 1CEStart со списком баз.

Способ 5. Сервер: перезапуск вместо удаления файлов

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

Какой способ выбрать

СпособКогда применятьРиск
/ClearCache в ярлыкепервая реакция на странное поведение одной базыминимальный
Удаление папок профиляпараметр не помог, платформа падаетпервый запуск медленный
Очистка %TEMP%не хватает места на дискепрактически нет
Скриптрегулярная чистка на терминальном сервереубитые сеансы, если запустить не вовремя
Перезапуск процессов серверапроблемы у всех пользователей кластераобрыв всех сеансов
Перед очисткой кэша
Выполнено: 0 / 5

Профилактика: чтобы кэш не превращался в проблему

Регулярно чистить кэш «на всякий случай» не нужно. Платформа сама справляется. Помогают другие привычки:

  • 🔄 после обновления конфигурации просите пользователей один раз перезапустить 1С. Для большинства баз этого достаточно;
  • 💽 держите на системном диске запас места, особенно на терминальном сервере, где профили множатся;
  • 🖥 на терминальных серверах настройте очистку профилей при выходе или перенаправьте временные файлы на отдельный диск;
  • 🧩 не копируйте профиль пользователя между компьютерами целиком: вместе с ним переезжает чужой кэш;
  • 🚫 не отключайте антивирус для папок 1С «чтобы быстрее», зато добавьте каталоги платформы и кэша в исключения, чтобы он не блокировал файлы при записи;
  • 🔌 следите за корректным завершением работы. Повреждённые файлы чаще всего появляются после выключения питания с запущенной 1С.

Скорость работы зависит не только от кэша. Если 1С тормозит у всех, а чистка не помогает, смотрите в сторону диска (HDD вместо SSD), нехватки оперативной памяти, антивируса, сети и состояния базы. Кэш здесь лишь одна из многих причин.

Если после очистки кэша ничего не изменилось

Бывает, что папки удалены, параметр добавлен, а ошибка осталась. Значит, причина глубже. Проверьте по очереди:

  1. Другой пользователь на том же компьютере. Войдите в Windows под другой учётной записью и откройте ту же базу. Работает — проблема в профиле первого пользователя, и его целиком можно пересоздать.
  2. Та же база с другого компьютера. Ошибка повторяется — виновата не рабочая станция, а база, расширения или конфигурация.
  3. Расширения. Отключите расширения по одному и проверьте, не из-за них ли форма ведёт себя странно.
  4. Версия платформы. Сравните версию клиента с версией, на которой база работала раньше. Старый клиент с новой конфигурацией и наоборот дают нестабильность, которую кэш не лечит.
  5. Состояние самой базы. Для файловой базы запустите тестирование и исправление через конфигуратор, для серверной проверьте журнал регистрации и технологический журнал.

Перед тестированием и исправлением базы сделайте выгрузку или копию файла 1Cv8.1CD. Исправление может изменить данные, и вернуться назад без копии не получится.

Если проблема есть только у одного человека и пересоздание профиля Windows помогло, зафиксируйте это в памятке для администратора. В следующий раз вы потратите на лечение пять минут вместо часа поиска.

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

Можно ли удалить кэш 1С, если в нём лежат несохранённые данные?
Несохранённые документы живут в памяти открытого сеанса, а не в папках кэша. Но закрытие программы их потеряет. Сначала сохраните работу, потом чистите.
Пропадут ли настройки пользователя после очистки кэша?
Нет. Настройки форм, отборы и рабочий стол хранятся в самой информационной базе. Исчезнет только список баз, если по ошибке удалить ibases.v8i.
Как часто нужно чистить кэш?
Только по необходимости: после обновления или при ошибках на конкретном рабочем месте. Плановая еженедельная чистка пользы не даёт и замедляет первый запуск.
Почему после чистки 1С запускается дольше?
Платформа заново собирает кэш метаданных и форм. Это разовая задержка, дальше скорость вернётся.
Нужно ли чистить кэш в файловой базе отдельно?
Клиентский кэш чистится так же. Сам файл базы 1Cv8.1CD кэшем не является, его удалять нельзя: это все ваши данные.
Как узнать, какая папка кэша относится к моей базе?
Точного соответствия по названию нет, имена идентификаторов ничего не говорят. Проще всего очистить все папки или посмотреть по дате изменения: у базы, с которой вы только что работали, папка свежее остальных.