Архитектура TagNet

Источники разработки платформы

Разработка платформы стартовала в начале 2000-х годов, как развитие отдельных решений по сбору данных с низовых систем (контроллеры ТМ, приборы учета).

Основные принципы и архитектурные решения, которые закладывались в платформу:

Концептуальная архитектура платформы

Платформа состоит из трех основных элементов:

Конфигуратор предназначен для конфигурирования модулей ввода/вывода, и в режиме исполнения не участвует.

Сервер координатор реализует JNDI API (внутреннее наименование Сервера координатора - JNDI сервер) и основная его задача - регистрация в реестре IO серверов и предоставление серверам списка уже зарегистрированных IO серверов.

Каждый IO сервер содержит список тегов, поток которых он может либо предоставлять другим IO серверам, либо подписываться и получать от других IO серверов.

Общий сценарий работы IO серверов следующий:

Для взаимодействия между модулями в сети TagNet используется протокол RMI (англ. Remote Method Invocation) - программный интерфейс вызова удаленных методов в языке Java.

На рисунке ниже показана общая схема взаимодействия модулей в сети TagNet.

Шина сбора данных TagNet

Архитектура платформы схожа с архитектурой микросервисов, за исключением того, что в платформе отсутствует централизованный сервис обмена сообщениями - все модули платформы обмениваются между собой данными напрямую.

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

Ограничения:

Ядро платформы и базовый комплект поставки

Минимальный состав компонент, который позволяет использовать платформу включает Конфигуратор, Сервер координатор, которые составляют ядро платформы, и один или несколько модулей ввода вывода.

Для удобства выделяется минимальный комплект поставки платформы, который состоит из следующих компонент:

Остальные модули могут быть получены по запросу Клиентом, в рамках единой лицензии на платформу.