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, 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. 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 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.

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, ne esistono anche implementazioni basate su sistemi di messaggistica broadcast o multicast.