Este post ha sido aprobado por nuestros especialistas así se asegura la veracidad de este artículo.
Solución:
Por lo general, diseña aplicaciones MQTT de manera que no tenga suscriptores abrumados. Puede lograr esto distribuyendo la carga a diferentes temas.
Si realmente no puede hacer eso, eche un vistazo a la suscripción compartida acérquese a intermediarios de MQTT sofisticados como MessageSight y HiveMQ. Esta es exactamente la característica que está buscando, pero depende del corredor y no es parte de la especificación oficial de MQTT.
MQTT es un protocolo Pub/Sub, la base es para una distribución de mensajes de 1 a muchos, no 1 a 1 (de muchos) que describe. Lo que describe se parecería más a un sistema de Message Queue Server que es claramente diferente de Pub/Sub.
Mosquitto como una implementación pura de este protocolo no admite la entrega tal como la describe. Para nosotros, una solución es una cola local con el suscriptor al que se agregan los mensajes entrantes y luego los consume un grupo de subprocesos.
Creo que el dispositivo IBM Message Sight puede ofrecer el tipo de entrega de mensajes que está buscando como una extensión del protocolo llamado Suscripciones compartidas, pero con esto habilitado se está desviando de la especificación MQTT pura.
MQTT v5 tiene soporte para suscripciones compartidas y la versión 1.6 de mosquitto agregó soporte para MQTT v5.
Consulte las notas de la versión
Buen artículo sobre suscripciones compartidas aquí
Si haces scroll puedes encontrar las notas de otros sys admins, tú igualmente tienes la libertad de insertar el tuyo si lo crees conveniente.