Почему при работе с сервером происходит долгое первое открытие справочников в 1С

Индивидуальную консультацию запросил Елена (Москва)

Ответственный за ответ: Шаврова Ирина (★9.93/10)

Развернули новый сервер 1С с отдельным сервером MSSQL, столкнулись с такой проблемой:

При первом обращении к справочникам и разделам, например:
• «Физические лица»
• «Сотрудники»
• «Номенклатура»
— отклик до открытия занимает около минуты.
При повторном открытии этих же разделов отклик практически мгновенный.
После перезапуска клиента 1С ситуация повторяется — первый доступ снова долгий.
Среда:
• 1С:Предприятие: 8.3.27.1719
• Конфигурация: ERP 3.2.8.11
• СУБД: Microsoft SQL Server 2016 (SP1)
• Сервер 1С и SQL — на разных машинах
• ОС серверов: Windows Server 2019

Что уже проверяли:
• Нагрузка на SQL в момент открытия запросов пиков не показывает
• После первого открытия данные загружаются быстро — вероятно, кэшируется на стороне 1С или SQL
• Индексы, статистика и планы запросов на SQL актуальны
• Сетевое соединение между серверами стабильное, без явных задержек

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

 

Метки вопроса: —

Все комментарии (1)

  1. Здравствуйте!
    «При первом обращении к справочникам и разделам, например:
    • «Физические лица»
    • «Сотрудники»
    • «Номенклатура»
    — отклик до открытия занимает около минуты.
    При повторном открытии этих же разделов отклик практически мгновенный.
    После перезапуска клиента 1С ситуация повторяется — первый доступ снова долгий.» (с)

    Ситуация не относится на прямую к программе 1С.
    Вам нужен специалист по оптимизации сервера и сети. Мы лишь консультируем по работе типового функционала 1С, заложенного разработчиками.
    Специалистов по настройке SQL Server у нас нет.

    Но вы можете учесть мое мнение по причинам первоначального долгого открытия справочников в 1С.

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

    Судя по вашему описанию, у вас постоянно очищается кеш.
    Возможно — это делается программно и средствами SQL Servera или написан какой-то bat-ник на эту команду.
    Этого мы не знаем.

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

    Специалист SQL Server проанализирует ситуацию и даст вам рекомендации.
    Если кеш создается первоначально долго — возможно, пришло время свернуть базу, если настроить сервер не получится.
    Сам динамический поиск по индексам в регламентных задачах тоже можно проверить по задаче Полнотестового поиска, если поиск тоже идет медленно внутри справочника, значит регламентное задание не справляется с перепостроением индексов для быстрого поиска в справочниках и нужно проверить, что регламентное задание работает, расписание запуска адекватное и оно отрабатывает корректно
    Обновление индекса ППД 1С 8.3 что это

    Но это в дополнение. Основная проблема — в долгом ПЕРВОНАЧАЛЬНОМ создании кеша.
    Если проблема в первоначальном запуске только — то это у всех так происходит. Единственно, время зависит от объема и наполнения базы, для «тяжелых» больших баз пока не свернете базу — время будет большим.
    Потом уже все должно быть быстро.

Комментарии закрыты.