Skip to content

MessageProcessor ​

Cценарий DataPipe дополняется счётчиками разного рода и в итоге получается MessageProcessor

Ресурсы Инстанса во времени ​

  1. Logporter позволяет получить рантайм cpu, ram и сеть
  2. Prometheus позволит из Logporter получить уже окна - [месяц, неделя, день, час]
  3. Занимаемые ресурсы постоянной памяти можно взять из postgres и clickhouse напрямую
  4. Для того чтобы узнать сколько памяти всего осталось у хост системы нужен какой-то экспортер
  5. Максимальное значение внешней сети нужно вводить в настройки инстанса, по умолчанию 100 МБ/c
  • из этого собирается базовое общее понимание
  • инстанс сможет прогнозировать динамику сколько ему ещё стабильно работать

Ресурсы Unit во времени ​

  1. Подписка на +/+/pepeunit и +/+
  2. Считаются все MPS входящие и исходящие на каждый UnitNode (на Unit просто через join c суммированием)
  3. Среднее число сообщений от/на доманшний инстанс [месяц, неделя, день, час]
  4. Среднее число сообщений от/на внешние инстансы [месяц, неделя, день, час]
  5. Динамика размера памяти на основе строк DataPipe [месяц, неделя, день, час]
  6. Выдаёт отказ в обслуживании при превышении лимитов
  • из этого мы поймём процентное соотношение кто как потребляет какие ресурсы

Перенос подписки из backend в MessageProcessor ​

  1. Подписка на domain.com/+/+/+/pepeunit
  2. Обработка входящих state/pepeunit и log/pepeunit
  • Backend больше никуда не подписывается по mqtt
  • Backend оставляет себе только настройку EMQX и выдачу доступов
  • Можно будет на Backend провести рефактор mqtt соединений