¿Es una buena idea usar MQTT en lugar de tecnologías web en tiempo real como sockets web o sondeos largos ya que es mucho más liviano?

Si está ejecutando MQTT a través de Internet pública, y lo que es más importante, si se está conectando desde un dispositivo móvil (como un teléfono) que se conecta a conexiones wifi públicas semialeatorias, debe saber que no todas las conexiones wifi públicas pasan todo el tráfico. Es mucho más probable que un paquete HTTP determinado atraviese el loco firewall de su cafetería que un paquete MQTT dado. (Descubrí esto con la aplicación “Owntracks” que es ingeniosa pero no del todo práctica debido a este problema).

Aparte de eso, depende completamente de su aplicación. Si su sistema tiene solo dos componentes (cliente y servidor), entonces no importa en absoluto y debe buscar la disponibilidad de herramientas para resolver el problema rápidamente. Por otro lado, si hay muchos mensajes provenientes de muchos lugares que van a muchos lugares que desea investigar detenidamente, los corredores MQTT, especialmente si necesita enviar tantos mensajes que necesita construir un sistema de colas distribuidas para manejarlos.

Sí, creo que es una buena idea usar MQTT en lugar de cualquier otra tecnología MQ basada en socket. Pero no es una solución ligera como piensas cuando se compara con cualquier otro MQ como ZeroMQ y RabbitMQ. Pero dependiendo de su aplicación y su arquitectura, sus cambios … De todos modos, en nuestro proyecto estamos utilizando MQTT -ZeorMQ Bridges … para aplicaciones integradas en servicios web.