Терминальный режим 1С vs тонкий клиент: замеряем, сравниваем, выбираем

«Переводить на терминал или оставить тонкий клиент?» Этот вопрос мы слышим каждый месяц. Руководители ИТ-отделов читают форумы, где одни хвалят терминальный сервер, другие — ругают. Одни говорят: «перевели 50 пользователей, летает». Другие: «поставили терминалку, стало хуже». Оба правы. Потому что ответ зависит от конкретной инфраструктуры.

Мы замерили производительность обоих вариантов на одинаковом оборудовании, с одной базой, одними и теми же операциями. Без маркетинга и мнений — только цифры.

Терминальный режим: как это работает

Пользователь подключается к серверу по RDP (Remote Desktop Protocol). На сервере запускается его сеанс Windows, внутри сеанса — 1С. Всё вычисление, вся работа с данными, вся отрисовка интерфейса происходит на сервере. На рабочую станцию пользователя передаётся только картинка — растровое изображение экрана, сжатое протоколом RDP.

Рабочая станция может быть чем угодно. Старый компьютер, тонкий клиент-терминал за 15 000 рублей, ноутбук с 4 ГБ памяти. Не важно. Вся нагрузка — на сервере.

Преимущества очевидны:

  • Клиентские машины не нагружаются. Можно использовать слабые или старые компьютеры.
  • Данные не покидают серверную. Безопасность выше — на рабочих станциях нет баз, нет кэшей.
  • Обновление 1С — в одном месте. Обновили на сервере — все пользователи получили новую версию.
  • Удалённые пользователи подключаются по RDP и получают скорость, как будто сидят рядом с сервером.

Недостатки тоже:

  • Сервер должен тянуть всех. 20 пользователей — это 20 сеансов Windows, 20 процессов 1С, 20 порций оперативной памяти. Нужен мощный сервер.
  • Если сервер падает — не работает никто. Единая точка отказа.
  • Лицензии Windows Server + RDS CAL (Client Access License) на каждого пользователя. Это не бесплатно.
  • Печать через RDP — отдельная боль. Перенаправление принтеров работает, но не всегда корректно. Драйверы, очереди, задержки.
Архитектура терминального режима и тонкого клиента 1С

Тонкий клиент: архитектура и преимущества

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

Между тонким клиентом и сервером 1С — собственный протокол платформы. Тонкий клиент отправляет серверу команды: «открой форму», «проведи документ», «сформируй отчёт». Сервер выполняет логику, обращается к SQL Server за данными и возвращает клиенту результат — структурированные данные для отображения.

Ключевое отличие от терминала: по сети передаются данные, а не картинка. Форма с таблицей из 500 строк — это несколько килобайт структурированных данных. В терминальном режиме та же форма — это растровое изображение, которое обновляется при каждом скролле.

Преимущества тонкого клиента:

  • Нагрузка распределена. Отрисовка — на клиенте, логика — на сервере 1С, данные — на SQL Server. Три звена, каждое делает своё.
  • Нет единой точки отказа (кроме сервера 1С и SQL, но их можно кластеризовать).
  • Не нужны лицензии RDS CAL.
  • Печать локальная — работает штатно, без перенаправления через RDP.
  • Офлайн-режим: тонкий клиент можно настроить на работу с файловой базой локально, а синхронизацию — по расписанию.

Недостатки:

  • Рабочие станции должны быть достаточно мощными. Минимум 4 ГБ RAM, желательно SSD. На совсем старом железе тонкий клиент будет тормозить при отрисовке тяжёлых форм.
  • Обновление клиента — на каждой машине. Платформа умеет обновлять тонкий клиент автоматически при подключении к серверу, но это требует настройки.
  • Чувствительность к сети. Между тонким клиентом и сервером 1С идёт постоянный обмен. Задержка больше 20 мс — пользователь начинает замечать.

Замеры: голые цифры

Тестовый стенд. Сервер: 2x Xeon E5-2680 v4 (28 ядер), 128 ГБ RAM, SSD NVMe. SQL Server 2019 Standard. Платформа 1С 8.3.25. База: 1С:ERP 2.5, 45 ГБ, 300 000 документов. Тестовые операции выполнялись последовательно, без фоновой нагрузки, затем — под нагрузкой 20 параллельных сеансов.

Терминальный сервер — тот же физический сервер, Windows Server 2022 с ролью RDS. Тонкий клиент — рабочая станция Core i5-12400, 16 ГБ RAM, SSD, подключена к серверу по гигабитной локальной сети (ping 0.3 мс).

Открытие формы документа «Реализация товаров» (пустая). Тонкий клиент: 0.8 сек. Терминал: 0.6 сек. Разница минимальна. Терминал чуть быстрее, потому что данные не передаются по сети — форма рисуется на сервере.

Открытие формы с 500 строками табличной части. Тонкий клиент: 1.4 сек. Терминал: 1.1 сек. Терминал быстрее на 20%. Данные табличной части остаются на сервере, клиент получает только видимую область.

Проведение документа (500 строк). Тонкий клиент: 3.2 сек. Терминал: 3.1 сек. Практически одинаково. Проведение — серверная операция. Способ подключения не влияет.

Формирование ОСВ за год. Тонкий клиент: 6.8 сек. Терминал: 5.9 сек. Терминал быстрее на 13%. Отчёт генерирует большой объём данных для отображения. В тонком клиенте эти данные передаются по сети.

Скролл табличного документа (10 000 строк). Тонкий клиент: плавный, данные подгружаются по мере прокрутки. Терминал: заметные подёргивания, RDP перерисовывает область экрана при каждом скролле. При активной прокрутке терминал потребляет больше сетевого трафика.

Под нагрузкой 20 сеансов. Тонкий клиент: время операций увеличилось на 10-15% — сервер 1С и SQL чуть загружены, но клиентская отрисовка не пострадала. Терминал: время операций увеличилось на 25-40% — сервер дополнительно тратит ресурсы на 20 графических сеансов Windows, каждый из которых потребляет 300-800 МБ RAM и процессорное время на отрисовку.

Сравнительная таблица замеров производительности терминального и тонкого клиента 1С

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

Когда выбрать терминал, а когда тонкий клиент

Терминальный режим выигрывает в четырёх ситуациях.

Удалённые пользователи с плохим каналом. Если между офисом и пользователем — канал 10 Мбит/с с задержкой 50 мс, тонкий клиент будет страдать. RDP работает лучше на плохих каналах: он передаёт дельту экрана, а не полные данные. Пользователь на другом конце страны через VPN будет работать в терминале быстрее, чем через тонкий клиент.

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

Зоопарк рабочих станций. В парке — машины от Pentium G до Core i7, от 2 ГБ RAM до 32. Обновлять 50 компьютеров — нет бюджета. Терминал позволяет дать всем одинаковую скорость, не трогая рабочие станции.

Централизованное администрирование. Один сервер, одна точка обновления, один набор настроек. Для ИТ-отдела из одного человека на 30 пользователей — существенное упрощение.

Тонкий клиент выигрывает в других четырёх:

Быстрая локальная сеть. Гигабит, ping меньше 1 мс — тонкий клиент раскрывается полностью. Отрисовка на клиенте, нагрузка распределена, сервер занят только логикой и данными.

Большое количество пользователей. 50+ пользователей на терминале — нужен очень мощный сервер. Или ферма терминальных серверов с балансировщиком. Это дорого и сложно. 50 тонких клиентов нагружают только сервер 1С и SQL, без графики. Масштабируется проще.

Активная работа с печатными формами. Бухгалтерия печатает сотни документов в день. Перенаправление принтеров через RDP — постоянный источник проблем. Тонкий клиент печатает напрямую. Без промежуточных звеньев.

Бюджет. Нет лицензий RDS CAL (от $150 за пользователя). Нет мощного терминального сервера. Рабочие станции среднего уровня — 80% компаний уже имеют машины, способные запустить тонкий клиент.

Критерии выбора между терминальным режимом и тонким клиентом 1С

Гибридный вариант

В большинстве проектов мы рекомендуем не «или-или», а «и-и». Часть пользователей — на терминале, часть — на тонком клиенте. Это не компромисс. Это архитектурное решение, которое использует преимущества обоих подходов.

Офисные пользователи с хорошими машинами и гигабитной сетью — тонкий клиент. Удалённые сотрудники, филиалы, мобильные пользователи — терминальный сервер. Один сервер 1С, одна база SQL, два способа подключения.

Технически это реализуется просто. Сервер 1С принимает подключения от тонких клиентов по штатному протоколу. Терминальный сервер — отдельная машина (или виртуалка), на которой установлен тонкий клиент 1С, подключённый к тому же серверу 1С. Удалённые пользователи подключаются по RDP к терминальному серверу и работают через тонкий клиент, установленный на нём.

Что нужно учесть при гибридной схеме:

  • Лицензии 1С. Каждый сеанс — одна лицензия. Не важно, тонкий клиент или терминал. Если у вас 30 лицензий — одновременно работают 30 человек, любым способом подключения.
  • Лицензии Windows. RDS CAL нужны только для терминальных пользователей. Тонкие клиенты не требуют RDS CAL.
  • Мониторинг. Терминальный сервер нужно мониторить отдельно: загрузка CPU, память, дисковая активность. Если терминальный сервер перегружен — страдают только удалённые пользователи. Офисные — продолжают работать нормально.
  • Обновление. Платформу обновляем в двух местах: на сервере 1С и на терминальном сервере. Тонкие клиенты в офисе обновляются автоматически при подключении к серверу (если настроена автоматическая установка).

Пример из практики. Торговая компания, 45 пользователей. Центральный офис — 30 человек, гигабитная сеть, современные рабочие станции. Три филиала — по 5 человек, подключены через VPN, канал 20 Мбит/с, задержка 25-40 мс. На тонком клиенте из филиала открытие формы занимало 4-6 секунд. Перевели филиалы на терминальный сервер в центральном офисе — стало 0.8-1.2 секунды. Офисные пользователи остались на тонком клиенте.

Другой пример. Производственное предприятие, 25 пользователей. Все в одном здании, но рабочие станции — разношёрстные. Часть — свежие i5, часть — десятилетние Celeron с 4 ГБ RAM. Тонкий клиент на старых машинах тормозил при открытии тяжёлых форм. Перевели 8 пользователей со слабыми машинами на терминал. Остальные 17 — на тонком клиенте. Проблема решена без замены оборудования.

Гибридный подход часто оказывается оптимальным и по стоимости. Терминальный сервер на 10-15 удалённых пользователей — это виртуалка с 8 ядрами и 32 ГБ RAM. Не суперкомпьютер. А экономия на обновлении парка рабочих станций в филиалах — существенна.

Выбор между терминалом и тонким клиентом — не вопрос веры. Это инженерная задача с измеримыми параметрами: задержка сети, мощность рабочих станций, количество пользователей, требования безопасности, бюджет на лицензии. Замерьте. Сравните. Возможно, ответ — оба варианта одновременно. Если после выбора архитектуры подключения скорость всё ещё не устраивает — проверьте, не кроется ли причина в неочевидных антипаттернах запросов, которые тормозят и на терминале, и на тонком клиенте одинаково.