MQTT v5 имеет дополнительное расширение, называемое Shared Subscription, которое будет доставлять сообщения группе подписчиков в режиме циклического перебора. Таким образом, каждое сообщение будет доставлено только одной группе.
В Mosquitto v1.6.x реализован MQTT v5 и возможность совместной подписки.
Непонятно, что вы подразумеваете под 1 сообщением за раз. Сообщения будут доставляться по мере их поступления, и брокер не будет ждать, пока один подписчик завершит работу над сообщением, прежде чем доставить следующее сообщение следующему подписчику в группе.
Если у вас достаточно низкий контроль над клиентом, вы можете запретить ответы с высоким QOS, чтобы клиент не смог подтвердить сообщение и заставить посредника разрешить отправку только одного сообщения за один раз, что эффективно ограничило бы доставку сообщений. , но вы должны делать это только в том случае, если обработка сообщения выполняется очень быстро, чтобы предотвратить принятие брокером решения о сбое доставки и попытке доставить сообщение другому клиенту в общей группе.
Обычно брокер не выполняет никакой маршрутизации сверх той, которая основана на теме. Как указано в комментарии к этому ответу, Flespi реализовал «липкие сеансы», так что сообщения от определенного издателя будут доставляться тому же клиенту в общем пуле подписок, но это пользовательское добавление. а не часть спецификации.