Si tienes una empresa, ya sea tecnológica o más tradicional, seguro que alguna vez te viste obligado a utilizar colas de mensajes, ya sean físicas (hojas de pedidos en un restaurante, por ejemplo) o tecnológicas (RabbitMQ, Amazon SQS, etc.). Estas colas son activos muy importantes para el funcionamiento de la empresa, ya que sin ellas no habría manera de realizar ninguna comunicación entre las diferentes áreas (cocina y mesas en caso del restaurante) o diferentes programas (en el caso de la empresa tecnológica).
Como este es un blog de tecnología, a partir de ahora vamos a hablar siempre de las colas de mensajes de tipo tecnológico.
Empezaremos por hablar un poco de estas colas de mensajes. A nivel de funcionamiento, básicamente, estas colas de mensajes actuarían como una pila de papeles. Los programas van rellenando la pila con nuevos mensajes, mientras otros programas los van recogiendo. Estos mensajes pueden contener cualquier cosa, desde un simple texto, hasta ficheros.
Ventajas
Vamos a comenzar comentando por encima las ventajas de esta tecnología:
- Distribución eficiente de mensajes entre los diferentes procesos o programas dentro de tu empresa.
- Almacenamiento automático. Los mensajes se guardan hasta que son leídos, haciendo que se pueda obviar la parte de almacenaje de los mismo y pudiéndonos centrar en el uso que hacemos de ellos.
- Gran escalabilidad. Al aumentar el número de programas que hacen un uso de ellas no se nota una caída de rendimiento.
- Desacoplamiento entre programas. Al solamente tener que interpretar los mensajes de las colas, los programas no son tan dependientes unos de otros.