Cua de missatges

En aquesta cua de missatges basada en munt, l'emissor sempre assigna l'emmagatzematge i el receptor sempre desassigna. la cua de missatges de pila funciona de manera segura i molt més eficient.

En informàtica, les cues de missatges i les bústies de correu són components d'enginyeria de programari que s'utilitzen normalment per a la comunicació entre processos (IPC) o per a la comunicació entre fils dins del mateix procés. Utilitzen una cua per enviar missatges – el pas de control o de contingut. Els sistemes de comunicació de grup proporcionen tipus similars de funcionalitats.[1]

El paradigma de la cua de missatges és un germà del patró editor/subscriptor, i normalment és una part d'un sistema de programari intermedi orientat a missatges més gran. La majoria dels sistemes de missatgeria admeten tant els models d'editor/subscriptor com de cua de missatges a la seva API, per exemple Servei de missatges Java (JMS).[2]

Les cues de missatges implementen un patró de comunicació asíncrona entre dos o més processos/subprocesos pel qual la part emissora i la receptora no necessiten interactuar amb la cua de missatges al mateix temps. Els missatges col·locats a la cua s'emmagatzemen fins que el destinatari els recupera. Les cues de missatges tenen límits implícits o explícits sobre la mida de les dades que es poden transmetre en un sol missatge i el nombre de missatges que poden romandre pendents a la cua.[3]

En una implementació típica de la cua de missatges, un administrador del sistema instal·la i configura el programari de cua de missatges (un gestor de cues o intermediari) i defineix una cua de missatges anomenada. O es registren amb un servei de cua de missatges.[4]

Han sorgit tres estàndards que s'utilitzen en implementacions de cues de missatges de codi obert.

  1. Protocol avançat de cua de missatges (AMQP): protocol de cua de missatges ric en funcions, aprovat com a ISO/IEC 19464 des de l'abril de 2014.
  2. Streaming Text Oriented Messaging Protocol (STOMP): protocol de missatges senzill i orientat a text.
  3. MQTT (abans MQ Telemetry Transport): protocol lleuger de cua de missatges especialment per a dispositius incrustats.

Aquests protocols es troben en diferents etapes d'estandardització i adopció. Els dos primers funcionen al mateix nivell que HTTP, MQTT al nivell de TCP/IP.

Referències

  1. «What is a Message Queue?» (en anglès). https://aws.amazon.com.+[Consulta: 18 febrer 2023].
  2. «Message Queues: An Introduction | IBM» (en anglès). https://www.ibm.com.+[Consulta: 18 febrer 2023].
  3. Dive Into Queue Module In Python. Overview of POSIX message queues
  4. «Message Queuing (MSMQ)» (en anglès). https://learn.microsoft.com.+[Consulta: 18 febrer 2023].