структура вся одинаковая, только сообщения разным юзерам "принадлежат"?
И что с приложениями - продюсерами/консюмерами?
Да, приложение. Как пример, одной маленькой части - продюсер получает данные, допустим, от разных датчиков, каждый датчик имеет свой id и принадлежит определенному tenant (знает его id). Данные имеют разную структуру, они нормализуются и передаются в кафку. Теперь консюмер - один должен эти данные писать в базу, но батчами, по tenantId берет конфиг в какую db писать и записывает( у каждого tenant своя база). Второй собирая данные за последних Х минут, группируя их по tenantId и датчикId смотрит что бы они не превышали определенное значение, иначе - нотификация проблемы. Цель что бы нагрузка распределялась равномерно между tenant( что бы небыло такого что один имеет кучу датчиков а у другого только 2 и тот тормозит из-за большого количества 1.) - это как мини пример.
У вас эти тенанты прямого доступа к кафке же не имеют, так? И продюсер и консюмер в итоге - под вашим контролем? Просто у них есть датчики, которые стучатся на какой-то апи, и есть БД, в которой оказываются данные. Всё что между - ваше. Всё так?
Обсуждают сегодня