Это хорошая идея для сбора данных с устройств в очередь сообщений?
Допустим, у вас есть тысячи устройств, которые все время отправляют данные, будет ли очередь сообщений хорошим средством сбора данных для этих данных?
2 ответа
Очевидно, это зависит от:
- Вам нужно обрабатывать каждый набор данных, независимо от того, сколько ему лет?
- Будут ли данные поступать в постоянном потоке или будут пакетными?
- Может ли одно приложение обрабатывать все данные или оно должно быть сбалансировано?
- Есть ли у вас необходимость в функциях "обмена сообщениями", таких как темы?
- Если ваши устройства будут клиентами, есть ли на них реализация клиента?
Если у вас есть поток данных, который может обрабатываться одним приложением, и вы допускаете случайную потерю данных, я бы упростил его и отправил данные через REST или эквивалентный файл. Я обращаюсь к обмену сообщениями только тогда, когда вам нужна масштабируемость, долговечность, отказоустойчивость или возможность выравнивать нагрузку времени.
Вы не можете ошибиться при разработке очередей с использованием очередей, но, как сказал Крис (другой респондент), это может не стоить ваших усилий с точки зрения инфраструктуры, поскольку веб-серверы довольно хорошо справляются с разумной нагрузкой.
В "реальном мире" я видел, как коммерческие инструменты сообщают о состоянии в очередь для обработки, так что это, безусловно, правильное решение.