wmo-im / GTStoWIS2

Conversion of GTS headers to WIS2 topic
GNU General Public License v3.0
8 stars 5 forks source link

Is queue sharing a requirement for MQP? #70

Closed petersilva closed 2 years ago

petersilva commented 2 years ago

Similar to the discussion about Server-side filtering. The original AMQP (v<=0.9) has a concept of queues, and one can have multiple connections to the same queue from different processes, even on different machines, and they can consume messages from the same, shared, queue. This feature also available in MQTTv5 where it is known as "shared subscriptions"

With this feature, when a particular subscription is running too slowly, we just add processes to the subscription, the additional processes can download the messages in parallel to get important performance improvements.

This is a key element in deployment of AMQP so far, and it is very helpful in practice. Should this be another aspect of protocols used to define which protocols are acceptable?

e.g. MQTT v3 does not have shared subscriptions and so would be excluded by this requirement.

davidpodeur commented 2 years ago

I think that yes, queue sharing is a requirement as It is crucial:

MQTT v5 supports shared queues and would hence be the only MQTT version supported (no MQTT v3).

antje-s commented 2 years ago

From my point of view "shared subscription" is a good reason to decide for MQTT version5

petersilva commented 2 years ago

Agree that queue sharing is a mandatory requirement for MQP's adopted.