El Problema
Las soluciones de mensajería líderes de la industria (como Kafka o RabbitMQ) son maravillas de la ingeniería, pero a menudo resultan en un exceso masivo de arquitectura (over-engineering) para proyectos pequeños o medianos. Configurar entornos Erlang, administrar la JVM o levantar clusters pesados simplemente para pasar unos cuantos mensajes JSON entre tres microservicios consume demasiado tiempo y recursos de servidor, volviéndose inviable para prototipos rápidos o infraestructuras de bajo presupuesto.
La Solución
TinyMQ resuelve este problema ofreciendo una alternativa real plug & play sin las complejidades de un cluster empresarial masivo. Construido desde cero en Go, proporciona un único binario containerizado de menos de 15MB que consume un mínimo de memoria RAM y CPU.
A pesar de su ligereza, TinyMQ incluye capacidades de grado empresarial:
- Persistencia Inteligente y Clustering: Arquitectura Write-Ahead Log (.log) con recolección de basura automática, y soporte para clustering P2P nativo con elección de líder.
- Soporte Multi-Protocolo: Conexiones TCP full-duplex vía WebSockets, gateway nativo MQTT (v3.1.1) para IoT y un servidor TCP NATS integrado.
- Características Avanzadas: Grupos de consumidores (Pub/Sub), Colas de Mensajes Muertos (DLQ), enrutamiento basado en tiempo (delays), idempotencia de red y observabilidad nativa para Prometheus.
Es la herramienta perfecta para desarrolladores que necesitan comunicación asíncrona confiable sin el alto costo operacional.
Para conocer a fondo el funcionamiento interno, métricas de rendimiento y configuraciones del broker, visita la Documentación Oficial de TinyMQ.