Почему после обновления 1С:Предприятия 8.3.31 кеш конфигурации обновляется некорректно и формы открываются медленно?

Программист 1С v8.3 (Управляемые формы) 1C:Бухгалтерия IT и автоматизация бизнеса
← На главную

После обновления платформы 1С:Предприятия до версии 8.3.31 и конфигурации (например, 1С:Бухгалтерия Предприятия 3.0) пользователи могут столкнуться с проблемой замедленного открытия форм и некорректного фонового обновления кеша конфигурации. Это проявляется в том, что при каждом запуске тонкого клиента или при первом открытии форм возникает ощущение, будто кеш загружается заново, что приводит к значительным задержкам. В журнале регистрации могут появляться сообщения типа "Ошибка получения кэша конфигурации". Разберем, почему это происходит и как устранить эту проблему.

Эта ситуация часто возникает из-за изменений в механизмах работы с кешем конфигурации, которые были внесены в платформу 1С:Предприятие, начиная с версии 8.3.31. Одним из ключевых параметров, отвечающих за корректность и целостность кеша, является "Использовать дайджест конфигурации" (англ. UseDigestOfConfiguration).

Причина проблемы: параметр "Использовать дайджест конфигурации"

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

Возможные причины, по которым этот механизм может быть отключен или работать некорректно после обновления:

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

Шаги по устранению проблемы: Включение дайджеста конфигурации

Мы предлагаем пошагово рассмотреть, как проверить и включить параметр "Использовать дайджест конфигурации" в различных сценариях развертывания 1С:Предприятия.

1. Для клиент-серверного варианта (тонкий клиент без веб-сервера)

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

  1. Откройте консоль кластера серверов 1С:Предприятия: Обычно это делается через оснастку "Администрирование серверов 1С:Предприятия" (1cv8.conf) или с использованием утилиты rac.
  2. Найдите вашу информационную базу: В дереве кластера серверов перейдите к разделу "Информационные базы".
  3. Откройте свойства информационной базы: Выберите нужную базу данных, щелкните по ней правой кнопкой мыши и выберите пункт "Свойства" или дважды кликните левой кнопкой мыши.
  4. Найдите параметр "Использовать дайджест конфигурации": В окне свойств информационной базы внимательно просмотрите доступные параметры. Найдите строку "Использовать дайджест конфигурации".
  5. Включите параметр: Убедитесь, что этот параметр установлен в состояние "Истина" или отмечен флажком. Если он отключен, установите его в положение "Включено" (On).
  6. Примените изменения и перезапустите службу сервера 1С:Предприятия: После изменения параметра нажмите "ОК" или "Применить". Крайне важно перезапустить службу сервера 1С:Предприятия, чтобы изменения вступили в силу. Без перезапуска службы новые настройки могут не подхватиться, и проблема останется.

2. Для файлового варианта базы

В файловом варианте работы, хотя он и не так критичен к настройке сервера, как клиент-серверный, проблема с кешем также может возникнуть. В этом случае проверьте параметры в файле conf.cfg.

  1. Найдите файл conf.cfg: Этот файл обычно находится в каталоге установки платформы 1С (например, C:\Program Files\1cv8\8.3.31.1000\bin\conf\) или в каталоге пользователя 1С (например, C:\Users\<имя_пользователя>\AppData\Roaming\1C\1CE\).
  2. Откройте файл conf.cfg текстовым редактором: Используйте Notepad++ или любой другой текстовый редактор.
  3. Найдите или добавьте параметр UseDigestOfConfiguration: Убедитесь, что в файле присутствует строка UseDigestOfConfiguration=On. Если такой строки нет, добавьте ее в конец файла.
  4. Сохраните изменения и перезапустите 1С:Предприятие: После сохранения файла закройте все клиентские приложения 1С и запустите их заново, чтобы изменения вступили в силу.

3. Для работы через веб-клиент (IIS/Apache)

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

  1. Найдите файл публикации базы:
    • Для IIS это обычно файл default.vrd, расположенный в каталоге публикации вашей информационной базы на веб-сервере (например, C:\inetpub\wwwroot\ИмяВашейБазы\default.vrd).
    • Для Apache это может быть файл 1cv8.ws или аналогичный, который используется для описания публикации.
  2. Откройте файл текстовым редактором:
  3. Найдите или добавьте параметр UseDigestOfConfiguration: Внутри секции <config xmlns="http://v8.1c.ru/v8/publisher"> убедитесь, что присутствует параметр <useDigestOfConfiguration>true</useDigestOfConfiguration>. Если его нет, добавьте его.
    
    <config xmlns="http://v8.1c.ru/v8/publisher">
        <feature>WebClient</feature>
        <feature>ThinClient</feature>
        <feature>WS</feature>
        <feature>MobileClient</feature>
        <session id="1" connectionString="Srvr="ИмяВашегоСервера";Ref="ИмяВашейБазы";"/>
        <httpMethodsAllowed>GET POST</httpMethodsAllowed>
        <strong><useDigestOfConfiguration>true</useDigestOfConfiguration></strong>
    </config>
    
  4. Сохраните изменения и перезапустите веб-сервер: После внесения изменений необходимо перезапустить веб-сервер (IIS или Apache), чтобы новые настройки были применены. Для IIS это делается через "Диспетчер служб IIS", для Apache – через перезапуск соответствующей службы.

Дополнительные рекомендации

Включение параметра "Использовать дайджест конфигурации" является ключевым шагом для решения проблемы с некорректным обновлением кеша и медленным открытием форм в 1С:Предприятии версии 8.3.31 и выше. Этот параметр обеспечивает корректную проверку соответствия клиентского кеша серверной конфигурации, предотвращая повторную загрузку данных и значительно повышая производительность работы пользователей.

← На главную