Кэш платформы 1С: где лежит, когда мешает и как его сбросить
Содержание
Чистка кэша не ускоряет 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С зависает при открытии одного и того же списка или отчёта;
- 🚪 платформа аварийно закрывается при запуске конкретной базы, а другие базы открываются;
- 💾 на диске
C:внезапно пропало несколько гигабайт, и растёт папка профиля 1С.
Главный диагностический вопрос: воспроизводится ли проблема на другом компьютере или под другим пользователем? Если да, то дело в самой базе или конфигурации, кэш тут ни при чём. Если нет, чистка кэша на проблемном месте — первый и самый дешёвый шаг.
Как очистить кэш: способы от простого к радикальному
Идите по порядку. Каждый следующий способ грубее предыдущего.
Способ 1. Ярлык с параметром запуска
Самый аккуратный вариант. Платформа сама сбрасывает кэш клиент-серверных вызовов при старте.
- Откройте окно запуска 1С, выделите нужную базу.
- Нажмите «Изменить» и перейдите к дополнительным параметрам запуска (экран с параметрами командной строки).
- Добавьте параметр
/ClearCache. - Запустите базу. После старта параметр можно убрать, чтобы кэш потом работал как обычно.
То же в ярлыке на рабочем столе:
"C:\Program Files\1cv8\common\1cestart.exe" ENTERPRISE /IBName "Бухгалтерия" /ClearCache
Путь к исполняемому файлу у вас может отличаться: он зависит от версии платформы и разрядности. Посмотрите свойства существующего ярлыка и подставьте оттуда.
Способ 2. Удаление папок кэша вручную
Работает, когда параметр не помог или платформа не стартует.
- Полностью закройте все окна 1С и проверьте в диспетчере задач, что процессов
1cv8и1cv8cнет. - Откройте
%LOCALAPPDATA%\1C\1cv8и удалите папки с идентификаторами баз. Если трогаете только одну базу, удаляйте только её папку. - Повторите то же в
%APPDATA%\1C\1cv8. - Не удаляйте
ibases.v8iи всё, что лежит в1CEStart. - Запустите 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% | не хватает места на диске | практически нет |
| Скрипт | регулярная чистка на терминальном сервере | убитые сеансы, если запустить не вовремя |
| Перезапуск процессов сервера | проблемы у всех пользователей кластера | обрыв всех сеансов |
Профилактика: чтобы кэш не превращался в проблему
Регулярно чистить кэш «на всякий случай» не нужно. Платформа сама справляется. Помогают другие привычки:
- 🔄 после обновления конфигурации просите пользователей один раз перезапустить 1С. Для большинства баз этого достаточно;
- 💽 держите на системном диске запас места, особенно на терминальном сервере, где профили множатся;
- 🖥 на терминальных серверах настройте очистку профилей при выходе или перенаправьте временные файлы на отдельный диск;
- 🧩 не копируйте профиль пользователя между компьютерами целиком: вместе с ним переезжает чужой кэш;
- 🚫 не отключайте антивирус для папок 1С «чтобы быстрее», зато добавьте каталоги платформы и кэша в исключения, чтобы он не блокировал файлы при записи;
- 🔌 следите за корректным завершением работы. Повреждённые файлы чаще всего появляются после выключения питания с запущенной 1С.
Скорость работы зависит не только от кэша. Если 1С тормозит у всех, а чистка не помогает, смотрите в сторону диска (HDD вместо SSD), нехватки оперативной памяти, антивируса, сети и состояния базы. Кэш здесь лишь одна из многих причин.
Если после очистки кэша ничего не изменилось
Бывает, что папки удалены, параметр добавлен, а ошибка осталась. Значит, причина глубже. Проверьте по очереди:
- Другой пользователь на том же компьютере. Войдите в Windows под другой учётной записью и откройте ту же базу. Работает — проблема в профиле первого пользователя, и его целиком можно пересоздать.
- Та же база с другого компьютера. Ошибка повторяется — виновата не рабочая станция, а база, расширения или конфигурация.
- Расширения. Отключите расширения по одному и проверьте, не из-за них ли форма ведёт себя странно.
- Версия платформы. Сравните версию клиента с версией, на которой база работала раньше. Старый клиент с новой конфигурацией и наоборот дают нестабильность, которую кэш не лечит.
- Состояние самой базы. Для файловой базы запустите тестирование и исправление через конфигуратор, для серверной проверьте журнал регистрации и технологический журнал.
Перед тестированием и исправлением базы сделайте выгрузку или копию файла 1Cv8.1CD. Исправление может изменить данные, и вернуться назад без копии не получится.
Если проблема есть только у одного человека и пересоздание профиля Windows помогло, зафиксируйте это в памятке для администратора. В следующий раз вы потратите на лечение пять минут вместо часа поиска.
Частые вопросы
Можно ли удалить кэш 1С, если в нём лежат несохранённые данные?
Пропадут ли настройки пользователя после очистки кэша?
ibases.v8i.Как часто нужно чистить кэш?
Почему после чистки 1С запускается дольше?
Нужно ли чистить кэш в файловой базе отдельно?
1Cv8.1CD кэшем не является, его удалять нельзя: это все ваши данные.