В розничной торговле скорость обслуживания покупателей имеет решающее значение. Ситуация, когда онлайн-касса (например, популярная модель Атол 25Ф) начинает пробивать чек по 10–15 секунд вместо одной, способна полностью парализовать работу кассовой зоны. Особенно часто с этой проблемой сталкиваются компании, использующие терминальный доступ (подключение по RDP) к информационной базе 1С:Управление торговлей или 1С:Розница.
Разберем классический сценарий. Касса физически подключена к локальному компьютеру кассира, а программа 1С запущена на удаленном сервере. На обеих машинах установлены драйверы торгового оборудования (ДТО). Первые несколько дней система работает безупречно, а затем внезапно начинается сильная задержка при пробитии чеков. В тесте драйвера на локальной машине ККТ определяется мгновенно, а через RDP-сессию — с огромным опозданием. Выясним причину такого поведения и рассмотрим детальные технические решения, которые позволят навсегда избавиться от этой проблемы.
Проанализируем техническую сторону взаимодействия 1С с кассовым аппаратом через протокол удаленного рабочего стола. Главная проблема кроется в архитектуре проброса последовательных (COM) портов по RDP.
Рассмотрим наиболее правильный с точки зрения архитектуры 1С способ решения проблемы. Вместо трансляции тяжелого графического интерфейса всей операционной системы через RDP, мы можем использовать локальный запуск платформы в режиме тонкого клиента.
Посмотрим на алгоритм реализации этого метода по шагам:
Тонкий клиент.1С:Управление торговлей на веб-сервере (IIS или Apache) на стороне сервера. Это позволит подключаться к базе по протоколу HTTP или HTTPS.Почему это решает проблему? При такой схеме весь тяжелый код выполняется на сервере, но само взаимодействие с торговым оборудованием происходит локально на клиенте. Тонкий клиент передает на сервер только готовые данные документа, а физическая печать чека инициируется локальным драйвером АТОЛ без какого-либо участия сетевых RDP-задержек. Чек пробивается мгновенно.
Если специфика работы требует сохранения RDP-сессий, проанализируем альтернативный вариант — отказ от проброса портов в пользу прямого сетевого подключения ККТ.
Современные кассы, включая модель Атол 25Ф, оснащены сетевыми интерфейсами Ethernet или модулями Wi-Fi. Мы можем подключить ККТ напрямую к локальной сети торговой точки.
Разберем шаги по настройке данной схемы:
TCP/IP (или Сеть) вместо COM-порта.5555).При такой схеме данные передаются напрямую по сетевому протоколу TCP/IP. Скорость передачи пакетов в разы выше, чем при эмуляции последовательного порта средствами Microsoft RDP Redirection, а стабильность соединения значительно возрастает.
Начиная с 10-й версии драйверов (ДТО 10), разработчики АТОЛ добавили мощные встроенные инструменты для сетевой работы. Рассмотрим, как применить эти технологии для ускорения печати.
Первый вариант — использование Сервера удаленного подключения (RPC):
Второй вариант — Веб-сервер АТОЛ. Это современный подход, использующий JSON-запросы:
Если предыдущие варианты не подходят (например, используются старые версии ДТО 9.x, как у автора темы, или нет технической возможности настроить VPN), мы можем заменить стандартный RDP-проброс портов сторонним программным обеспечением.
Существуют специализированные утилиты, которые упаковывают трафик COM-порта в чистые TCP-пакеты и передают их по сети с минимальными закладными расходами. К ним относятся программы класса VSPE (Virtual Serial Port Emulator), com0com в связке с com2tcp, или коммерческие решения вроде FabulaTech FT Serial Ports Sharing.
Рассмотрим логику работы такой связки:
4000).4000 и создает в диспетчере устройств виртуальный COM-порт (например, COM10).COM10.Поскольку передача осуществляется специализированным драйвером по оптимизированному TCP-каналу без посредничества тяжелых алгоритмов RDP, скорость отклика кассы увеличивается в несколько раз, возвращаясь к комфортным показателям в 1-2 секунды на чек.
Подводя итог, отметим: стандартный проброс портов в RDP — это устаревшая и крайне нестабильная технология для работы с торговым оборудованием. Для долгосрочной и бесперебойной работы торговой точки настоятельно рекомендуется перевести пользователей на Тонкий клиент 1С или использовать современные сетевые интерфейсы ККТ.