Guías

Los mejores brokers MQTT comparados: Mosquitto vs EMQX vs HiveMQ vs gestionados

Comparativa de brokers MQTT: Mosquitto, EMQX, HiveMQ, VerneMQ, NanoMQ y brokers cloud gestionados: lenguaje, clustering, MQTT 5, licencias y cómo elegir.

Actualizado · 8 min de lectura

Todos los brokers MQTT enrutan mensajes de publicadores a suscriptores, y todos los que van en serio soportan MQTT 3.1.1 y 5. Las diferencias reales están en la escala, la operación y las licencias: cómo hace clustering, en qué está escrito, cuánto cuesta mantenerlo y quién lo mantiene. Esta comparativa se ciñe a hechos conocidos y verificables — sin benchmarks inventados — y termina con una guía práctica para elegir.

¿Solo quieres probar un broker ahora mismo? Nuestra lista de brokers públicos tiene endpoints de prueba listos para usar, y puedes conectarte a cualquiera de ellos desde el navegador.

Conéctate a un broker público desde tu navegador

Los brokers MQTT de un vistazo

Para una matriz de funciones que puedas filtrar, usa la comparativa interactiva de brokers MQTT.

BrokerLenguajeClustering en la edición gratuita / open sourceMQTT 5Licencia (edición gratuita)
Eclipse MosquittoCNo (solo bridging)SíEPL-2.0 / EDL-1.0
EMQXErlang/OTPSíSíApache 2.0 en versiones antiguas; las versiones recientes usan una Business Source License
HiveMQ Community EditionJavaNo (el clustering está en HiveMQ Enterprise)SíApache 2.0
VerneMQErlang/OTPSíSíApache 2.0
NanoMQCNo (solo bridging)SíMIT

Eclipse Mosquitto

Mosquitto es el broker open source más usado y la opción por defecto para despliegues pequeños y medianos. Está escrito en C, funciona sin problemas en una Raspberry Pi o un gateway edge y se configura con un único archivo de texto. Incluye los clientes de línea de comandos mosquitto_pub y mosquitto_sub que usan la mayoría de tutoriales de MQTT.

  • Puntos fuertes: consumo de recursos mínimo, configuración sencilla, maduro, empaquetado para la mayoría de distribuciones Linux y disponible como imagen oficial de Docker.
  • Límites: un solo nodo — sin clustering integrado; puedes conectar brokers con bridges, pero las sesiones no se comparten. La autenticación se basa en archivos o plugins.

Empieza con la instalación de Mosquitto, el generador de mosquitto.conf y el broker público test.mosquitto.org.

EMQX

EMQX, desarrollado por EMQ Technologies, está escrito en Erlang/OTP y diseñado para clustering y para un número muy elevado de conexiones simultáneas. Más allá de MQTT puro, incluye un motor de reglas tipo SQL, integraciones de datos con bases de datos y plataformas de streaming, un dashboard web y backends de autenticación y autorización integrados.

  • Puntos fuertes: clustering nativo, un conjunto de funciones muy completo de serie, buena observabilidad y extras como estrategias de suscripción compartida y el prefijo $queue.
  • Límites: más pesado de ejecutar y operar que Mosquitto; revisa la licencia de la versión que despliegas.

Pruébalo con el broker público de EMQX.

HiveMQ

HiveMQ es un broker basado en Java con un fuerte enfoque empresarial. La HiveMQ Community Edition, open source, es un broker MQTT 3.1.1 y 5 completo para un solo nodo con un SDK de extensiones. El clustering, la seguridad empresarial, la monitorización y el soporte comercial forman parte de HiveMQ Enterprise, y HiveMQ también ofrece un servicio cloud gestionado.

  • Puntos fuertes: fiel a la especificación, bien documentado, con un sólido soporte comercial y herramientas para sectores regulados.
  • Límites: el clustering requiere la edición comercial; la JVM necesita más memoria que los brokers escritos en C.

Pruébalo con el broker público de HiveMQ.

VerneMQ y NanoMQ

VerneMQ

VerneMQ es un broker con licencia Apache, basado en Erlang, con clustering integrado y soporte para MQTT 5. Es una opción sólida si quieres clustering open source bajo una licencia permisiva. Antes de apostar por él, revisa el ritmo actual de releases del proyecto y cómo se distribuyen los paquetes binarios oficiales.

NanoMQ

NanoMQ, también de EMQ, es un broker ligero en C pensado para dispositivos edge y gateways. Soporta MQTT 5, bridging hacia brokers en la nube y MQTT sobre QUIC. Piensa en él como un complemento en el edge de un broker central, no como su sustituto.

Brokers MQTT gestionados y en la nube

Un broker gestionado elimina el trabajo de operación — parches, certificados TLS, monitorización, copias de seguridad y escalado — a cambio de una suscripción. Algunas opciones:

  • HiveMQ Cloud y EMQX Cloud — versiones alojadas de los brokers anteriores.
  • AWS IoT Core y Azure IoT Hub / Azure Event Grid — endpoints MQTT que forman parte de plataformas IoT en la nube más amplias. Se integran con los servicios de identidad y datos de cada nube, pero usan autenticación específica de la plataforma y, en algunos casos, un subconjunto restringido de funciones de MQTT o de estructuras de topics.
  • ConnectMQ — un broker MQTT gestionado que ofrece instancias privadas y aisladas con autenticación por usuario/contraseña, control de acceso por topic, TLS y WebSockets seguros, y soporte para MQTT 3.1.1 y 5. Consulta ConnectMQ en nuestra lista de brokers.

Los servicios gestionados se diferencian sobre todo en el modelo de precios, los límites de conexiones y mensajes, qué funciones de MQTT 5 exponen y si usan autenticación estándar por usuario/contraseña o esquemas de identidad propietarios. Compáralos con tus requisitos, no con sus afirmaciones de marketing.

Cómo elegir un broker MQTT

  1. Aprendizaje, prototipos o domótica: Mosquitto en una Raspberry Pi o en Docker, o un broker público de prueba gratuito. Consulta Home Assistant MQTT para una configuración habitual.
  2. Gateways edge: Mosquitto o NanoMQ, con bridge hacia un broker central.
  3. Producción con alta disponibilidad en tu propia infraestructura: un broker con clustering como EMQX, VerneMQ o HiveMQ Enterprise — y un equipo cómodo operándolo.
  4. Integración profunda con un proveedor cloud: el servicio IoT de ese proveedor, si su subconjunto de funciones MQTT encaja con tus dispositivos.
  5. Producción sin mantener servidores: un broker gestionado con MQTT estándar, TLS y credenciales por dispositivo.

Elijas lo que elijas, comprueba estos puntos antes de comprometerte:

  • Funciones del protocolo de las que dependes: propiedades de MQTT 5, suscripciones compartidas, mensajes retenidos, límites de tamaño de mensaje. Consulta MQTT 5 vs 3.1.1.
  • Transportes: TCP, TLS y WebSockets para clientes en el navegador — consulta los puertos MQTT.
  • Seguridad: autenticación, ACL por topic y TLS. Nuestras buenas prácticas de seguridad MQTT enumeran qué buscar.
  • Operación: monitorización, actualizaciones, copias de seguridad y a quién despiertan de madrugada.

Prueba antes de decidir

Sean cuales sean los brokers de tu lista, ejecuta las mismas comprobaciones en cada uno: conéctate por todos los transportes que necesites, verifica QoS y mensajes retenidos y confirma que tu configuración de autenticación funciona. Nuestra guía sobre cómo probar un broker MQTT lo explica paso a paso.

Preguntas frecuentes

¿Qué broker MQTT es mejor para principiantes?

Eclipse Mosquitto suele ser el punto de partida más fácil. Es pequeño, está disponible en la mayoría de gestores de paquetes y como imagen de Docker, y se configura con un único archivo de texto. Si no quieres mantener ningún servidor, un broker MQTT gestionado es la opción más sencilla.

¿Qué es mejor, Mosquitto o EMQX?

Apuntan a necesidades distintas. Mosquitto es un broker ligero de un solo nodo, ideal para despliegues pequeños, gateways edge y domótica. EMQX está pensado para clustering y grandes volúmenes de conexiones e incluye un motor de reglas e integraciones de datos, a costa de más complejidad.

¿Se puede montar Mosquitto en clúster?

El broker Mosquitto open source no tiene clustering integrado. Puedes conectar varias instancias de Mosquitto con bridges, pero eso no equivale a un clúster con sesiones compartidas. Si necesitas clustering nativo, mira EMQX, VerneMQ, HiveMQ Enterprise o un servicio gestionado.