Message-oriented middleware
In informatica, un Message-Oriented Middleware (in italiano middleware orientato ai messaggi), più comunemente noto come MOM, è un'infrastruttura client/server che, distribuendo un'applicazione tra più piattaforme eterogenee,[1] ne incrementa l'interoperabilità, la portabilità e la flessibilità.
Tale infrastruttura semplifica lo sviluppo di applicazioni che usano sistemi operativi e protocolli di rete diversi, permettendo al programmatore di ignorare i dettagli degli stessi.[1][2] Ciò viene ottenuto grazie a delle API che coprono diverse piattaforme e tipologie di rete.
Il software MOM risiede sia sul client che sul server e consente l'esecuzione di chiamate asincrone fra gli stessi. I messaggi inviati verso client non disponibili vengono memorizzati in apposite code[1] che li conservano fin quando essi non sono nuovamente pronti per la ricezione. Tale meccanismo nasconde al programmatore l'implicita natura master/slave del meccanismo client/server. Il MOM si occupa anche di garantire che l'ordine dei messaggi inviati sia coerente con l'ordine con cui questi vengono ricevuti.[1]
I MOM rientrano nella categoria dei software per la comunicazione tra applicazioni tramite message-passing asincrono, differenziandosi dai software basati invece sulla metafora richiesta-risposta (request/response).
Nonostante la maggior parte dei MOM siano basati su un sistema di code di messaggi,[1] ne esistono anche implementazioni basate su sistemi di messaggistica broadcast o multicast.
Protocolli a livello applicativo per i MOM
[modifica | modifica wikitesto]- Advanced Message Queuing Protocol (AMQP)[3]
- Extensible Messaging and Presence Protocol (XMPP)[4]
- Streaming Text Oriented Messaging Protocol (STOMP)[5]
Note
[modifica | modifica wikitesto]- ^ a b c d e Cos'è il middleware? | IBM, su www.ibm.com, 12 giugno 2023. URL consultato il 25 settembre 2024.
- ^ Negin M, Che cos'è il middleware?, su SnapLogic, 18 maggio 2023. URL consultato il 25 settembre 2024.
- ^ OASIS AMQP versione 1.0, sezioni 2.6.7-2.6.8". OASIS AMQP Technical Committee.
- ^ Johansson, Leif (18 aprile 2005). "XMPP as MOM". Greater NOrdic MIddleware Symposium (GNOMIS). Oslo: University of Stockholm.
- ^ stomp.github.io, https://stomp.github.io/stomp-specification-1.2.html . URL consultato il 25 settembre 2024.