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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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