Отслеживание в реальном времени данных, получаемых с сенсоров, их представление в удобном для восприятия виде, принятии соответствующих решений. Формирование отчетности по заданным формам. Уведомления о критических значениях сенсоров.
Данных поступает очень много, поэтому болью также было время обработки и представления данных. Например, на Графиках для скорости отображения нужно использовать средние значения. Также возможна компрессия данных для меньшего размера дискового хранилища.
Изначально крупный продукт с богатым и разнообразным функционалом было решено перевести на микросервисы, чтобы расти дальше и позволить разрабатывать новые функции как можно быстрее и независимее. Проблемы, возникшие в ходе миграции, помогли нам лучше понять слабые и сильные стороны существующих решений. Во время миграции решались вопросы, какие существующие решения можно унаследовать, а также рассматривала альтернативы и новые возможности, предоставляемые современными облачными и распределенными средами.
Например, импорт и обработка данных датчиков - одна из ключевых функций продукта. Ранее требования к памяти для выполнения импорта были чрезвычайно высоки, а управлять различными источниками данных по отдельности было невозможно. Пересмотрев функционал различных частей приложения и переместив их в микросервисы, взаимодействующие друг с другом через очереди, мы смогли значительно улучшить его юзабилити и масштабируемость. Это позволило владельцам продуктов быть уверенными в том, что новые проекты могут быть запущены без риска для других клиентов.