No hay ninguna razón por la cual MQTT no pueda ser escalable. No he tenido problemas para implementar MQTT en un clúster de akka y escalarlo en varios nodos.
El único problema que encontré fue escalar el uso de comodines en varios nodos, y resultó ser un poco menos sensible de lo que quería cuando se usaban los comodines, porque quería asegurarme de que los mensajes se reenviaran solo a pares que estaban escuchando una suscripción que coincidía correctamente con el comodín …
Pero resultó que en la aplicación del mundo real, los comodines no se utilizaron en absoluto en mi escenario, por lo que resultó ser perfectamente escalable. Si puede renunciar al uso de comodines, eliminará gran parte de la complejidad.
- ¿Cuáles son los pros y los contras de MQTT versus CoAP como protocolos IoT para dispositivos con recursos limitados?
- ¿Dónde está la implementación del relleno de bytes y el relleno de bits?
- ¿Qué protocolo usa Traceroute?
- ¿Cuál es la diferencia entre el protocolo de túnel y la red superpuesta?
- ¿Qué puedo usar para enviar todos los paquetes TCP simultáneamente a través de 2 conexiones de forma redundante?
Otra cosa que ayudó fue limitar la duración de la sesión, por lo que el cliente se inicia periódicamente y se ve obligado a volver a conectarse, por lo que el clúster se reequilibra. Dada la naturaleza de MQTT, eso no causó ningún problema para nuestros clientes.