Администрирование · 9 мин
Как очистить кэш сервера 1С: полное руководство
Как очистить кэш сервера 1С:Предприятие: перезапуск агента, удаление srvinfo, очистка клиентского кэша. Признаки проблем, риски и проверка результата.
Кэш сервера 1С:Предприятие — это служебные данные, которые рабочие процессы кластера сохраняют для ускорения обращений к метаданным, сеансам и соединениям. Со временем эти данные могут устареть или повредиться, и тогда пользователи сталкиваются с характерными симптомами: база не открывается, изменения конфигурации «не подхватываются», возникают ошибки вида «Ошибка формата потока» или сеансы зависают без видимой причины.
Очистка кэша — штатная административная операция, но она требует аккуратности: неправильное удаление файлов или перезапуск служб в рабочее время приведёт к обрыву сеансов пользователей и возможной потере несохранённых данных. Поэтому перед любыми действиями важно понимать, какой именно кэш нужно очистить — серверный, клиентский или оба.
Ниже разобраны основные сценарии: перезапуск агента сервера, удаление каталога srvinfo, очистка локального кэша на клиентах и профилактические меры. Инструкции применимы к типовой клиент-серверной архитектуре 1С с СУБД (MS SQL, PostgreSQL и другими).
Когда очистка кэша действительно нужна
Не каждая ошибка в 1С решается очисткой кэша. Эта операция оправдана, когда наблюдаются конкретные симптомы: ошибка «Ошибка формата потока» при открытии базы, ситуация, когда обновление конфигурации прошло успешно, но пользователи видят старое поведение программы, массовые отказы в подключении к базе при работающем сервере СУБД, а также необъяснимые зависания сеансов.
Если же проблема связана с блокировками в СУБД, нехваткой дискового пространства или ошибками в коде конфигурации, очистка кэша не поможет и только отнимет время. Поэтому сначала проверьте журнал регистрации, технологический журнал и состояние сервера баз данных.
Очистка серверного и клиентского кэша обычно решает проблему
Перезапуск агента сервера и очистка кэша на клиенте
Анализируйте запросы и транзакции, а не кэш
Проверьте диск, память и нагрузку на СУБД
Подготовка: что сделать перед очисткой
Главное правило — очистка серверного кэша выполняется только после завершения пользовательских сеансов. Перезапуск службы агента сервера 1С мгновенно обрывает все активные соединения: пользователи потеряют несохранённые данные, а длительные фоновые операции (проведение документов, обмены, расчёты) прервутся на середине, что может оставить базу в неконсистентном состоянии до завершения отката транзакций.
Порядок подготовки: заранее предупредите пользователей о технологическом окне, в консоли кластера завершите активные сеансы или установите блокировку соединений с информационной базой, дождитесь завершения фоновых заданий. Также убедитесь, что у вас есть права администратора на сервере и вы знаете, где расположен каталог кластера.
Способ 1. Перезапуск службы агента сервера 1С
Самый простой и безопасный способ сбросить оперативный кэш — перезапустить службу агента сервера 1С:Предприятия. При перезапуске рабочие процессы очищают данные в памяти, а часть файлового кэша пересоздаётся автоматически. В большинстве ситуаций этого достаточно.
На Windows откройте оснастку «Службы» (services.msc), найдите службу «Агент сервера 1С:Предприятия» соответствующей версии и выполните перезапуск. На Linux служба обычно управляется через systemctl. После запуска дождитесь, пока рабочие процессы инициализируются — обычно это занимает от нескольких секунд до пары минут в зависимости от количества баз.
# Linux: перезапуск агента сервера 1С
sudo systemctl restart srv1cv8-8.3.XX-XXX
# Windows (PowerShell от администратора):
Restart-Service "1C:Enterprise 8.3 Server Agent*"Способ 2. Удаление каталога srvinfo
Если перезапуск службы не помог, следующий шаг — очистка файлового кэша кластера. Он хранится в каталоге srvinfo, который по умолчанию расположен в каталоге установки сервера (на Windows обычно это папка вида C:\Program Files\1cv8\<версия>\srvinfo, на Linux — /opt/1cv8/.../srvinfo или каталог, заданный параметром -d при запуске агента).
Алгоритм такой: завершите сеансы пользователей, остановите службу агента сервера, переименуйте или удалите содержимое каталога srvinfo (безопаснее именно переименовать, например в srvinfo_backup — тогда при проблемах можно откатиться), затем запустите службу. Кластер создаст чистую структуру каталогов и заново зарегистрирует базы.
Важный нюанс: в srvinfo хранится не только кэш, но и список зарегистрированных информационных баз кластера. Если удалить каталог полностью, регистрации баз пропадут, и их придётся добавить заново в консоли кластера. Поэтому перед удалением зафиксируйте список баз и их параметры (имя, сервер СУБД, имя базы данных).
- 1Завершите сеансы пользователей и заблокируйте соединения
- 2Остановите службу агента сервера 1С
- 3Переименуйте каталог srvinfo в srvinfo_backup
- 4Запустите службу агента и проверьте список баз в консоли кластера
- 5При отсутствии баз — зарегистрируйте их заново по сохранённым параметрам
- 6Проверьте вход в базу и работу ключевых операций
Очистка клиентского кэша
Часто проблема находится не на сервере, а на конкретном рабочем месте: кэш метаданных клиента повреждён, и база не открывается только у одного пользователя. Клиентский кэш хранится в профиле пользователя в папках %APPDATA%\1C\1cv8 и %LOCALAPPDATA%\1C\1cv8 — там находятся каталоги с именами в виде идентификаторов баз.
Чтобы очистить кэш вручную, закройте все сеансы 1С на компьютере и удалите папки с GUID-именами в указанных каталогах. Альтернатива — удалить базу из списка в стартере и добавить её заново: при этом клиентский кэш для этой базы пересоздаётся. Ещё один вариант — запуск с параметром командной строки /ClearCache, который очищает кэш при старте.
Проверка результата и типичные ошибки
После очистки проверьте, что проблема ушла и система работает штатно. Признаки успеха: база открывается без ошибок у всех пользователей, изменения конфигурации применились, в консоли кластера видны все базы и рабочие процессы, фоновые задания запускаются.
Как проверить результат
База открывается без ошибок у нескольких пользователей
Ошибка формата потока сохраняется
Все базы зарегистрированы и доступны
Список пуст — нужно перерегистрировать базы
Процессы rphost запущены и принимают соединения
Процессы не стартуют — смотрите журнал службы
Задания выполняются по расписанию
Задания не запускаются после очистки
Профилактика и ограничения метода
Регулярная «профилактическая» очистка кэша по расписанию — спорная практика. Если кэш приходится чистить часто, это симптом более глубокой проблемы: нестабильной сети, ошибок в доработках конфигурации, некорректного обновления платформы или конфликтов версий на сервере и клиентах. Правильнее найти и устранить причину, а не бороться со следствием.
К полезным профилактическим мерам относятся: синхронное обновление платформы на сервере и клиентах, контроль свободного места на диске с srvinfo, мониторинг технологического журнала на предмет повторяющихся ошибок и регламентное тестирование баз после нештатных ситуаций (отключение питания, аварийная остановка сервера).
Держите под рукой выгрузку списка баз кластера (скриншот консоли или экспорт) — после полной очистки srvinfo это сэкономит много времени на восстановлении регистраций, особенно если баз больше десятка.
Частые вопросы
Удалится ли база данных при очистке кэша сервера?
Нет. Кэш — это служебные временные данные кластера, а сами данные хранятся в СУБД (MS SQL, PostgreSQL и др.). При удалении srvinfo теряется только регистрация баз в кластере, которую можно восстановить, указав параметры подключения заново.
Как часто нужно чистить кэш сервера 1С?
Регулярная очистка не требуется — только по факту появления характерных ошибок. Если потребность возникает часто, ищите первопричину: конфликт версий платформы, нестабильную сеть или ошибки в доработках конфигурации.
Можно ли очистить кэш без перезапуска службы?
Перезапуск службы сам по себе очищает оперативный кэш. Удаление файлов srvinfo без остановки службы недопустимо — это рискует повредить данные кластера. Для клиентского кэша перезапуск сервера вообще не нужен: достаточно закрыть сеансы на конкретном компьютере.
Ошибка «Ошибка формата потока» не исчезла после очистки кэша. Что дальше?
Проверьте клиентский кэш на конкретных рабочих местах, убедитесь, что версии платформы на сервере и клиентах совпадают, и запустите тестирование и исправление информационной базы. Если база файловая — проверьте её утилитой chdbfl из комплекта платформы.
Чем отличается серверный кэш от клиентского?
Серверный кэш (srvinfo и память рабочих процессов) хранит данные кластера: регистрации баз, сеансы, метаданные для всех пользователей. Клиентский кэш — локальные копии метаданных на компьютере каждого пользователя. Ошибка «у всех» обычно указывает на серверный кэш, ошибка «у одного пользователя» — на клиентский.
Что важно запомнить
Очистка кэша сервера 1С выполняется перезапуском службы агента, а в сложных случаях — удалением srvinfo при остановленной службе с предварительным сохранением списка баз. Всегда завершайте сеансы пользователей до начала работ и проверяйте результат после. Если ошибка точечная у одного пользователя — начинайте с клиентского кэша, а не с сервера.