← На главную
При переходе на работу с информационной базой 1С через браузер пользователи и системные администраторы часто сталкиваются с заметным падением производительности по сравнению с классическим тонким клиентом. Отчеты формируются дольше, прокрутка динамических списков подтормаживает, а переключение между вкладками документов происходит с ощутимой задержкой даже при быстром канале связи (100 Мбит/с). Рассмотрим причины такого поведения платформы и разберем по шагам комплекс мер для ускорения работы 1С на веб-сервере.
Архитектурные причины медленной работы веб-клиента
Проанализируем, почему тонкий клиент выигрывает по скорости у браузера даже при идентичных условиях подключения:
- Разница движков отрисовки интерфейса: Тонкий клиент 1С написан на нативном языке C++ и напрямую использует графические подсистемы операционной системы с аппаратным ускорением. Веб-клиент работает внутри изолированной среды JavaScript-движка браузера. Сложные формы «Такси», таблицы и списки эмулируются через построение масштабного дерева HTML-элементов (DOM). Любое изменение окна, переключение закладки или скроллинг заставляют браузер выполнять ресурсоемкие операции пересчета геометрии страницы (reflow) и перерисовки (repaint).
- Обработка данных и сборка мусора: Тонкий клиент выполняет разбор сетевых пакетов на скомпилированном машинном коде. В браузере парсинг данных ложится на JavaScript. При постоянном создании и удалении экранных элементов динамических списков активно работает сборщик мусора (Garbage Collector), вызывая кратковременные зависания интерфейса.
- Локальное кэширование: Тонкий клиент кэширует схемы метаданных, структуры форм и графику на локальном диске пользователя. Веб-клиент жестко ограничен механизмами кэширования браузера, из-за чего часть элементов запрашивается и парсится повторно.
- Чувствительность к задержке сети (RTT): Для веб-клиента ключевую роль играет не пропускная способность канала (мегабиты в секунду), а сетевой пинг. Веб-клиент выполняет множество последовательных асинхронных запросов к серверу при каждом действии пользователя. Если задержка пакетов через интернет или VPN повышена, суммарное время ожидания отклика кратно возрастает.
Настройка веб-сервера IIS для максимального быстродействия
Разберем параметры веб-сервера Microsoft IIS, которые напрямую влияют на скорость отдачи данных и интерфейса 1С:
- Включение сжатия трафика: В диспетчере IIS необходимо включить динамическое и статическое сжатие контента (
Enable Dynamic Content Compression и Enable Static Content Compression). Это позволяет сжимать передаваемые скрипты платформы, стили и потоки данных в формате JSON/XML, уменьшая сетевую нагрузку в 3–5 раз.
- Оптимизация пула приложений:
Перейдем в настройки пула приложений (Application Pools), обслуживающего публикацию 1С, и установим следующие параметры:
Параметр .NET CLR Version установим в значение No Managed Code («Без управляемого кода»). Модуль расширения веб-сервера 1С (wsisapi.dll) является нативной библиотекой C++, поэтому поддержка среды .NET для него избыточна и только расходует ресурсы.
Параметр Idle Time-out (minutes) переведем в значение 0. Это предотвратит выгрузку рабочего процесса IIS из памяти при отсутствии активных запросов.
Параметр Start Mode в дополнительных параметрах пула изменим на AlwaysRunning для мгновенного отклика при первом подключении.
- Кэширование статических ресурсов платформы: Для опубликованной базы настроим HTTP-заголовки истечения срока действия (
HTTP Response Headers -> Set Common Headers), разрешив клиентам длительное кэширование статичных файлов (JS-библиотек платформы, CSS и пиктограмм).
- Переход на протокол HTTP/2 через HTTPS: Настройка защищенного SSL/TLS-соединения на веб-сервере автоматически включает протокол HTTP/2 в современных браузерах. HTTP/2 поддерживает мультиплексирование запросов внутри одного соединения, избавляя браузер от блокировки очередей при загрузке элементов интерфейса.
Оптимизация на стороне браузера и клиентского компьютера
Посмотрим, какие факторы ускоряют выполнение веб-клиента на рабочем месте пользователя:
- Выбор браузера: Браузеры на базе движка Chromium (Google Chrome, Яндекс.Браузер, Microsoft Edge) демонстрируют наилучшую скорость исполнения JavaScript платформы 1С и наиболее плавную прокрутку DOM-дерева по сравнению с другими обозревателями.
- Аппаратное ускорение: Убедимся, что в параметрах браузера включен пункт «Использовать аппаратное ускорение (при наличии)». Это переносит нагрузку по расчету графических слоев и анимации с центрального процессора на видеокарту.
- Отключение мешающих расширений: Сторонние плагины (блокировщики баннеров, скрипт-менеджеры, антивирусные экраны) могут перехватывать и проверять каждый XHR-запрос веб-клиента. Рекомендуется отключить расширения или запускать базу в чистом профиле браузера.
- Запуск в режиме изолированного веб-приложения: Для максимального удобства и снижения нагрузки на интерфейс браузера можно создать ярлык запуска с параметром:
chrome.exe --app=http://адрес_сервера/база
Это открывает 1С в отдельном окне без адресной строки, закладок и лишних панелей.
Оптимизация настроек в самой платформе 1С
Рассмотрим возможности конфигурации и платформы для ускорения взаимодействия:
- Режим низкой скорости соединения: При запуске через веб-интерфейс или в меню «Главное меню — Сервис — Параметры» можно активировать флаг «Режим низкой скорости соединения». Платформа сократит передачу служебной информации, отключит предварительную загрузку данных и оптимизирует динамические списки.
- Настройка состава колонок в списках: Перегруженные динамические списки (например, журнал документов «Заказы клиентов» или список номенклатуры с множеством вычисляемых полей и остатков) генерируют чрезмерно сложное дерево элементов. Уменьшение количества отображаемых колонок через «Еще — Изменить форму» ускоряет прорисовку таблицы в браузере в разы.
Использование тонкого клиента поверх протокола HTTP/HTTPS
Если веб-сервер уже настроен и опубликован, оптимальным решением с точки зрения скорости является запуск тонкого клиента 1С через веб-публикацию:
- В окне запуска 1С:Предприятия нажимаем «Добавить базу» и выбираем вариант «На веб-сервере».
- В поле адреса информационной базы указываем полный путь к публикации (например,
http://сервер/ут11 или https://сервер/ут11).
- При таком сценарии подключение проходит через стандартные веб-порты (80/443), как и в браузере (что не требует прямого подключения к портам кластера 1С), но всю работу с графическим интерфейсом выполняет нативный тонкий клиент на C++. Это обеспечивает максимальное быстродействие при формировании отчетов, переключении закладок и прокрутке данных.