Несколько MQTT тем: как собрать согласованный снимок

MQTT: последние значения и общий снимокПорядок прихода разных тем сам по себе не обеспечивает атомарный снимок измерительного циклаMOPE / Полевые узлы и эксплуатация хозяйстваMQTT: последние значения и общий снимокНезависимые поляСобственное время и качествокаждого значенияСовместно используемый снимокОбщий идентификатор либо единоесообщение по прикладному контрактуПорядок прихода разных тем сам по себе не обеспечивает атомарный снимокизмерительного циклаАвторская схема по принятому тексту • условные связи, не монтажный чертёж
Порядок прихода разных тем сам по себе не обеспечивает атомарный снимок измерительного цикла
Увеличить схему
MQTT: последние значения и общий снимокПорядок прихода разных тем сам по себе не обеспечивает атомарный снимок измерительного циклаMOPE / Полевые узлы и эксплуатация хозяйстваMQTT: последние значения и общий снимокНезависимые поляСобственное время и качествокаждого значенияСовместно используемый снимокОбщий идентификатор либо единоесообщение по прикладному контрактуПорядок прихода разных тем сам по себе не обеспечивает атомарный снимокизмерительного циклаАвторская схема по принятому тексту • условные связи, не монтажный чертёж

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

Определить требуемую согласованность

MQTT5 описывает собственные условия доставки и порядка сообщений. (OASIS — MQTT Version5.0, Standard2019-03-07) Из них нельзя произвольно вывести атомарный снимок разных тем, издателей и обработчиков. Сначала решите, какие поля должны относиться к одному циклу устройства и для какой задачи это действительно необходимо.

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

Создать учебную последовательность

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

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

Проверить повторы и поздние части

Добавьте повтор одного компонента и запоздавшее сообщение старого цикла. Сборщик должен различать дополнение текущего набора и поступление исторической части. Правило завершения и срок ожидания задают по требованиям приложения, не объявляя универсальный интервал для всех датчиков.

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

Сохранить прозрачный результат

В архиве полезно хранить исходные события и результат сборки с указанием правила. Тогда можно объяснить, почему экран показал неполный набор или отнёс позднее поле к прошлому циклу. Скрытая сортировка только по времени серверного поступления затрудняет такое объяснение.

Приёмка завершается проверкой штатного порядка, задержки части, повтора и перезапуска сборщика. В каждом случае подтверждают смысл полученного снимка. Это даёт хозяйству проверяемую согласованность данных без необоснованного обещания, что любой обмен по нескольким MQTT темам автоматически является одной транзакцией измерения.

Запросить

Запросы отправляются на наш e-mail из вашей почтовой программы.

География поставок и типы судов

Поставка, монтаж и сертификационное обслуживание оборудования по всей территории Российской Федерации, Республики Казахстан и стран СНГ. Сертификаты РМРС/РКО.

Типы судов и оснащение
Танкеры
Нефть, газ, химия
Балкеры
Навалочные грузы
Контейнеровозы
Линейные контейнеры
Рефрижераторы
Скоропорт
РО-РО / накатные
Авто и накатные
Универсальные
Генеральные грузы
Баржи
Несамоходные
Толкачи
Толкаемые составы
Река-море
Смешанное (РКО)
Траулеры
Кошельковый/донный
Сейнеры
Малый прибрежный
Краболовы
Промысел краба
Ярусоловы
Ярусный лов
Плавбазы
Перерабатывающие
Ледоколы
Атомные/дизельные
Спасательные
Аварийно-спасательные
Буксиры
Портовые/морские
Лоцманские
Подвозка лоцманов
Кабелеукладчики
Подводные кабели
Научно-исслед.
Гидрография
География портов и регионов
Дальний Восток (моря)
ВладивостокНаходкаКорсаковПетропавловск-КамчатскийМагаданХолмскЮжно-СахалинскХабаровскВаниноВосточныйБольшой КаменьПосьетЗарубино
Север и Балтика
МурманскАрхангельскСанкт-ПетербургУсть-ЛугаКалининградВыборгСабеттаДудинкаДиксонНарьян-МарВоркутаКандалакшаТиксиПеченга
Юг России
НовороссийскСевастопольАстраханьРостов-на-ДонуСочиТаманьТуапсеТемрюкКавказЕйскАнапаГеленджикМахачкала
Сахалин и Курилы
КорсаковХолмскНевельскПоронайскУглегорскАлександровск-СахалинскийОхаКурильскСеверо-КурильскМалокурильскоеШикотан
Волга
ТверьКимрыУгличРыбинскЧереповецЯрославльКостромаКинешмаНижний НовгородЧебоксарыКозьмодемьянскВолжскКазаньУльяновскТольяттиСамараСызраньВольскСаратовКамышинВолгоградАхтубинскБузанАстрахань
Ока, Кама, Вятка, Белая
СерпуховКоломнаРязаньОрёлКалугаБерёзникиПермьСарапулКамбаркаНабережные ЧелныЧистопольВоткинскКировВятские ПоляныУфаБирскСтерлитамак
Дон и Северский Донец
ЛискиВоронежВолгодонскКонстантиновскУсть-ДонецкийБагаевскаяРостов-на-ДонуАзовКаменск-ШахтинскийЦимлянск
Беломоро-Балтийский канал
Санкт-ПетербургПетрозаводскМедвежьегорскПовенецНадвоицыВытеграБелозерскЧереповецКижиСоловки
Северная Двина
Великий УстюгКотласАрхангельскСеверодвинскСольвычегодскХолмогорыОнегаМезень
Иртыш, Обь, Томь
ОмскТобольскХанты-МансийскБийскБарнаулНовосибирскНижневартовскСургутНефтеюганскСергиноСалехардКемеровоТомскЛангепасМегион
Енисей и Ангара
АбаканДивногорскКрасноярскКазачинскоеЛесосибирскТуруханскИгаркаДудинкаИркутскСвирскБратскУсть-ИлимскКодинскБогучаныЕнисейск
Лена и Восточная Сибирь
Усть-КутКиренскВитимЛенскОлёкминскПокровскЯкутскСангарЖиганскСунтарНюрбаВерхоянскБатагайХонууЧокурдахСеймчанЗырянкаСреднеколымскЧерский
Амур и притоки
БлаговещенскПоярковоХабаровскКомсомольск-на-АмуреБогородскоеНиколаевск-на-АмуреАмурскСвободныйЗеяТында
Казахстан
АстанаАлматыШымкентКарагандаАктобеТаразПавлодарУсть-КаменогорскСемейАтырауКостанайУральскПетропавловскТемиртауАктауКокшетауКурыкБейнеуБаутино
Беларусь, Армения, Азербайджан
МинскГомельБрестВитебскГродноМогилёвБакуГянджаСумгаитЕреванГюмриВанадзор
Центральная Азия (UZ/KG/TJ/TM)
ТашкентСамаркандБухараНукусАндижанБишкекОшКараколДушанбеХуджандКулябАшхабадТуркменбашиБалканабадДашогуз

География поставок и сервиса

Морское, речное и радиосвязное оборудование. Доставка по РФ, Казахстану и СНГ. Логистика — ж/д, авто, авиа, морем, в порты и на суда.

Москва Санкт-Петербург Новосибирск Екатеринбург Казань Нижний Новгород Челябинск Самара Уфа Ростов-на-Дону Краснодар Воронеж Пермь Волгоград Красноярск Саратов Тюмень Ижевск Барнаул Иркутск Хабаровск Ярославль Владивосток Махачкала Томск Оренбург Кемерово Новокузнецк Тольятти Архангельск Сургут Мурманск Калининград Сочи Новороссийск Туапсе Анапа Геленджик Таганрог Ейск Севастополь Ялта Феодосия Керчь Симферополь Магадан Якутск Петропавловск-Камчатский Анадырь Норильск Дудинка Игарка Тикси Певек Корсаков Холмск Невельск Поронайск Александровск-Сахалинский Южно-Сахалинск Ноглики Курильск Северо-Курильск Советская Гавань Ванино Николаевск-на-Амуре Охотск Комсомольск-на-Амуре Благовещенск Тында Чита Улан-Удэ Братск Усть-Илимск Находка Уссурийск Артём Большой Камень Алматы Астана Шымкент Караганда Актобе Атырау Актау Курык Бейнеу Кызылорда Усть-Каменогорск Павлодар Семей Уральск Туркменбаши Баку Поти Батуми