SynchClientServer: библиотека для TCP-сервера в 1C 8.3

Библиотека SynchClientServer для работы с TCP сервером в 1С 8.3 на C++ с использованием Boost.Asio. Поддерживает Windows и Linux.

Article

Библиотека SynchClientServer — это внешняя Native API компонента для платформы 1C 8.3, реализованная на C++ с использованием Boost.Asio. Она предоставляет функциональность синхронного TCP-сервера, но может работать и в режиме клиента. Поддерживает обработку нескольких соединений на разных портах, настройку задержек чтения/записи и времени жизни сокетов без активности. Компонента протестирована в реальных проектах, включая интеграцию медицинского оборудования с системами на 1C, и работает на Windows (32/64-бит) и Linux (64-бит).

Методы включают настройку параметров (SetServerParameters), запуск сервера (Listen), получение сообщений (GetMessagesFromClients и варианты), подтверждение обработки (AckMessagesReceipt) и отправку данных (SendMessageToClient, SendMessageToRemoteServer). Синхронный подход упрощает отладку, а Boost.Asio обеспечивает гибкость для будущих расширений на UDP или COM-порты.

Ключевые преимущества:
- Поддержка множества соединений на нескольких портах, в отличие от MSWINSCK.OCX.
- Настраиваемые задержки для чтения/записи и таймауты неактивности сокетов.
- Синхронные методы для удобной отладки и доработки.
- Кросс-платформенность: Windows и Linux.
- Протестирована в продакшене с интенсивным трафиком.

Ссылки