Почему долго запускается база 1С:Бухгалтерия или ЗУП перед появлением окна авторизации?

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

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

Разберем основную причину: Выгрузка метаданных в платформе 8.3.23+

Проанализируем поведение серверной части 1С. Начиная с версии 8.3.23, в платформе изменились алгоритмы управления памятью рабочих процессов rphost. Когда в информационной базе нет активных сеансов, сервер приложений через определенное время (обычно около 20 минут) полностью выгружает конфигурацию из оперативной памяти для экономии ресурсов.

В результате первый пользователь, пытающийся войти в базу, инициирует процесс полной загрузки метаданных из SQL-таблиц в память сервера. Для тяжелых конфигураций, таких как Бухгалтерия предприятия 3.0 или Зарплата и управление персоналом 3.1, этот процесс требует колоссального количества операций чтения и декомпиляции кода. Рассмотрим, как это можно исправить:

  1. Обновление до 8.3.25: В этой версии 1С добавила штатную настройку «Задержка выгрузки конфигурации рабочим процессом». Установите значение в 0 (бесконечность) или 86400 (сутки), чтобы сервер не «забывал» конфигурацию.
  2. Поддержание активности: Если обновление невозможно, можно использовать «робота» (регламентное задание или простой скрипт), который будет раз в 15 минут совершать попытку подключения к базе, не давая серверу выгрузить кэш.

Проанализируем сетевые задержки и влияние протокола IPv6

При изучении технологического журнала (ТЖ) часто обнаруживаются записи вида Ping direction statistics, где время отклика достигает 10-15 секунд. Выясним причину: современные ОС Windows и платформа 1С по умолчанию пытаются взаимодействовать через протокол IPv6. Если он настроен некорректно или имеет приоритет над IPv4, платформа ожидает таймаута соединения, прежде чем переключиться на стандартный IPv4.

Для устранения этой задержки выполним следующие действия:

Установим приоритет IPv4 над IPv6 через командную строку (от имени администратора):


netsh interface ipv6 set prefixpolicy ::ffff:0:0/96 46 4
netsh interface ipv6 set prefixpolicy ::1/128 50 0

Также рекомендуется в файле hosts на сервере и клиентах явно прописать соответствие IP-адреса и имени сервера 1С, чтобы исключить долгие DNS-запросы.

Оптимизируем настройки MS SQL Server для работы с 1С

Часто долгий старт связан с тем, что SQL-сервер не успевает быстро отдать необходимые данные для инициализации сеанса. Рассмотрим настройки, которые существенно влияют на «прогрев» базы:

1. Настройка параллелизма: Для баз 1С рекомендуется ограничивать использование ядер процессора для одного запроса. В свойствах сервера SQL (раздел Advanced) установим:

2. Флаги трассировки: Применим флаги, которые рекомендует фирма 1С для оптимизации блокировок и работы с временными таблицами. Добавим их в параметры запуска SQL Server:

-T1211 -T1224 -T2371 -T4199

3. Параметры базы данных: Убедимся, что параметры Auto-Close и Auto-Shrink установлены в OFF. Если включен Auto-Close, SQL-сервер закрывает базу при выходе последнего пользователя, и первый запуск будет включать время на монтирование файлов mdf/ldf.

Настройка поиска лицензий через nethasp.ini

Если в вашей системе используются (или когда-либо использовались) аппаратные USB-ключи HASP, платформа при старте может тратить до 30-60 секунд на опрос сети в поисках ключа. Даже если вы перешли на программные лицензии, этот механизм может продолжать работать.

Разберем, как жестко задать адрес сервера лицензий и отключить широковещательные запросы. Отредактируем файл nethasp.ini (обычно находится в C:\Program Files\1cv8\conf):


[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 127.0.0.1  ; Укажите IP вашего сервера лицензий
NH_USE_BROADCAST = Disabled
NH_TCPIP_METHOD = TCP

Использование технологического журнала для точной диагностики

Если вышеперечисленные методы не помогли, нам необходимо увидеть, на чем именно «висит» процесс. Создадим файл logcfg.xml в папке conf версии платформы со следующим содержанием для отслеживания длительных операций:


<config xmlns="http://v8.1c.ru/7.4/config/log">
  <log location="C:\LOGS\1C" history="2">
    <event>
      <eq property="Name" value="CONN"/>
    </event>
    <event>
      <eq property="Name" value="EXCP"/>
    </event>
    <property name="All"/>
  </log>
</config>

После запуска базы проанализируем полученные логи. Ищите события с длительностью (второе число в строке) более 10 000 000 (10 секунд). Особое внимание обратите на ошибки liccspr (связанные с лицензированием) и сетевые таймауты CONN.

Краткие выводы и рекомендации

Подводя итог, можно сказать, что «медленный первый запуск» — это комплексная проблема. Для её решения мы рекомендуем:

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

← На главную