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

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

При переходе на работу с информационной базой 1С через браузер пользователи и системные администраторы часто сталкиваются с заметным падением производительности по сравнению с классическим тонким клиентом. Отчеты формируются дольше, прокрутка динамических списков подтормаживает, а переключение между вкладками документов происходит с ощутимой задержкой даже при быстром канале связи (100 Мбит/с). Рассмотрим причины такого поведения платформы и разберем по шагам комплекс мер для ускорения работы 1С на веб-сервере.

Архитектурные причины медленной работы веб-клиента

Проанализируем, почему тонкий клиент выигрывает по скорости у браузера даже при идентичных условиях подключения:

  1. Разница движков отрисовки интерфейса: Тонкий клиент 1С написан на нативном языке C++ и напрямую использует графические подсистемы операционной системы с аппаратным ускорением. Веб-клиент работает внутри изолированной среды JavaScript-движка браузера. Сложные формы «Такси», таблицы и списки эмулируются через построение масштабного дерева HTML-элементов (DOM). Любое изменение окна, переключение закладки или скроллинг заставляют браузер выполнять ресурсоемкие операции пересчета геометрии страницы (reflow) и перерисовки (repaint).
  2. Обработка данных и сборка мусора: Тонкий клиент выполняет разбор сетевых пакетов на скомпилированном машинном коде. В браузере парсинг данных ложится на JavaScript. При постоянном создании и удалении экранных элементов динамических списков активно работает сборщик мусора (Garbage Collector), вызывая кратковременные зависания интерфейса.
  3. Локальное кэширование: Тонкий клиент кэширует схемы метаданных, структуры форм и графику на локальном диске пользователя. Веб-клиент жестко ограничен механизмами кэширования браузера, из-за чего часть элементов запрашивается и парсится повторно.
  4. Чувствительность к задержке сети (RTT): Для веб-клиента ключевую роль играет не пропускная способность канала (мегабиты в секунду), а сетевой пинг. Веб-клиент выполняет множество последовательных асинхронных запросов к серверу при каждом действии пользователя. Если задержка пакетов через интернет или VPN повышена, суммарное время ожидания отклика кратно возрастает.

Настройка веб-сервера IIS для максимального быстродействия

Разберем параметры веб-сервера Microsoft IIS, которые напрямую влияют на скорость отдачи данных и интерфейса 1С:

  1. Включение сжатия трафика: В диспетчере IIS необходимо включить динамическое и статическое сжатие контента (Enable Dynamic Content Compression и Enable Static Content Compression). Это позволяет сжимать передаваемые скрипты платформы, стили и потоки данных в формате JSON/XML, уменьшая сетевую нагрузку в 3–5 раз.
  2. Оптимизация пула приложений:

    Перейдем в настройки пула приложений (Application Pools), обслуживающего публикацию 1С, и установим следующие параметры:

    Параметр .NET CLR Version установим в значение No Managed Code («Без управляемого кода»). Модуль расширения веб-сервера 1С (wsisapi.dll) является нативной библиотекой C++, поэтому поддержка среды .NET для него избыточна и только расходует ресурсы.

    Параметр Idle Time-out (minutes) переведем в значение 0. Это предотвратит выгрузку рабочего процесса IIS из памяти при отсутствии активных запросов.

    Параметр Start Mode в дополнительных параметрах пула изменим на AlwaysRunning для мгновенного отклика при первом подключении.

  3. Кэширование статических ресурсов платформы: Для опубликованной базы настроим HTTP-заголовки истечения срока действия (HTTP Response Headers -> Set Common Headers), разрешив клиентам длительное кэширование статичных файлов (JS-библиотек платформы, CSS и пиктограмм).
  4. Переход на протокол HTTP/2 через HTTPS: Настройка защищенного SSL/TLS-соединения на веб-сервере автоматически включает протокол HTTP/2 в современных браузерах. HTTP/2 поддерживает мультиплексирование запросов внутри одного соединения, избавляя браузер от блокировки очередей при загрузке элементов интерфейса.

Оптимизация на стороне браузера и клиентского компьютера

Посмотрим, какие факторы ускоряют выполнение веб-клиента на рабочем месте пользователя:

  1. Выбор браузера: Браузеры на базе движка Chromium (Google Chrome, Яндекс.Браузер, Microsoft Edge) демонстрируют наилучшую скорость исполнения JavaScript платформы 1С и наиболее плавную прокрутку DOM-дерева по сравнению с другими обозревателями.
  2. Аппаратное ускорение: Убедимся, что в параметрах браузера включен пункт «Использовать аппаратное ускорение (при наличии)». Это переносит нагрузку по расчету графических слоев и анимации с центрального процессора на видеокарту.
  3. Отключение мешающих расширений: Сторонние плагины (блокировщики баннеров, скрипт-менеджеры, антивирусные экраны) могут перехватывать и проверять каждый XHR-запрос веб-клиента. Рекомендуется отключить расширения или запускать базу в чистом профиле браузера.
  4. Запуск в режиме изолированного веб-приложения: Для максимального удобства и снижения нагрузки на интерфейс браузера можно создать ярлык запуска с параметром:

    chrome.exe --app=http://адрес_сервера/база

    Это открывает 1С в отдельном окне без адресной строки, закладок и лишних панелей.

Оптимизация настроек в самой платформе 1С

Рассмотрим возможности конфигурации и платформы для ускорения взаимодействия:

  1. Режим низкой скорости соединения: При запуске через веб-интерфейс или в меню «Главное меню — Сервис — Параметры» можно активировать флаг «Режим низкой скорости соединения». Платформа сократит передачу служебной информации, отключит предварительную загрузку данных и оптимизирует динамические списки.
  2. Настройка состава колонок в списках: Перегруженные динамические списки (например, журнал документов «Заказы клиентов» или список номенклатуры с множеством вычисляемых полей и остатков) генерируют чрезмерно сложное дерево элементов. Уменьшение количества отображаемых колонок через «Еще — Изменить форму» ускоряет прорисовку таблицы в браузере в разы.

Использование тонкого клиента поверх протокола HTTP/HTTPS

Если веб-сервер уже настроен и опубликован, оптимальным решением с точки зрения скорости является запуск тонкого клиента 1С через веб-публикацию:

  1. В окне запуска 1С:Предприятия нажимаем «Добавить базу» и выбираем вариант «На веб-сервере».
  2. В поле адреса информационной базы указываем полный путь к публикации (например, http://сервер/ут11 или https://сервер/ут11).
  3. При таком сценарии подключение проходит через стандартные веб-порты (80/443), как и в браузере (что не требует прямого подключения к портам кластера 1С), но всю работу с графическим интерфейсом выполняет нативный тонкий клиент на C++. Это обеспечивает максимальное быстродействие при формировании отчетов, переключении закладок и прокрутке данных.
← На главную