Облачное взаимодействие для MQTT и AMQP?

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

Ответ 1

Большая разница здесь заключается в следующем: речь идет о AMQP 0.x или AMQP 1.0. Это два совершенно разных протокола, и только последний стандарт ISO/IEC поддерживается основными продуктами с открытым исходным кодом, такими как ActiveMQ и брокерами Artemis, клиентами Qpid Proton и Qpid Dispatch Router. Такие продукты, как RabbitMQ, поддерживают AMQP 0.x(только с плагином версии 1.0). Большая разница заключается в том, что AMQP 0.x определяет способ разработки брокера и имеет такие понятия, как обмены, очереди и привязки. В AMQP 1.0 нет информации об этом, который является протоколом приложения поверх TCP/IP, обеспечивающим большую абстракцию и не определяющий способ разработки брокера. Первой большой разницей с MQTT является то, что AMQP 1.0 является одноранговым протоколом: вы можете использовать его между двумя одноранговыми узлами, без необходимости брокера посередине. Конечно, он использовался для общения с брокером, обеспечивающим механизм хранения и продвижения. Вы можете использовать его для шаблона запроса/ответа и для pub/sub. Он имеет встроенную систему типов и сообщения предоставляют информацию метаданных.

MQTT - это легкий протокол, работающий только с брокером в середине без концепции очереди (он может хранить сообщения, когда клиент отключен, используя функцию "чистый сеанс" ). У него есть еще одна особенность над AMQP, как тест "воля". Он поддерживает только pub/sub и не содержит метаданных в сообщениях.

AMQP более ориентирован на обмен сообщениями, чем MQTT. Он был создан JP Morgan для деловых операций.

Вы можете найти много информации о них с углубленным сравнением. Если вам нужны ресурсы и ссылки, спросите меня;)

Паоло.

Ответ 2

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

MQTT Принципы и цели разработки MQTT гораздо более просты и сфокусированы, чем у AMQP - он обеспечивает обмен сообщениями "публикация и подписка" (без очередей, несмотря на название) и был специально разработан для устройств с ограниченными ресурсами и низкой пропускной способностью, высокой Сети с задержкой, такие как коммутируемые линии и спутниковые каналы, например. По сути, его можно эффективно использовать во встроенных системах.

Я рекомендую вам использовать AMQP.

Источник: http://blogs.vmware.com/