Condividi tramite


Code di messaggi e background delle tecnologie di messaggistica

Aggiornamento: novembre 2007

Accodamento messaggi di Microsoft Windows consente agli sviluppatori delle applicazioni di comunicare in modo rapido, semplice e affidabile con i programmi applicativi mediante l'invio e la ricezione di messaggi. In questa pagina, che risulta particolarmente utile per gli utenti che hanno poca esperienza con la tecnologia MessageQueue, viene fornita una breve panoramica dei termini e dei concetti fondamentali.

Concetti principali relativi ai sistemi di messaggistica

Un messaggio rappresenta un'unità di dati trasmessa tra due computer. Esistono messaggi molto semplici, composti solo da una stringa di testo, o più complessi, contenenti eventuali oggetti incorporati.

I messaggi vengono inviati alle code. Una coda di messaggi è un contenitore che include i messaggi in transito. Il gestore della coda di messaggi funge da intermediario nell'inoltro di un messaggio dall'origine alla destinazione. Lo scopo principale di una coda consiste nel fornire il routing e nel garantire la consegna dei messaggi. Se, all'invio di un messaggio, il destinatario non è disponibile, il messaggio verrà conservato nella coda fino a quando non sarà consegnato.

La tecnologia di messaggistica Microsoft Accodamento messaggi rende disponibili funzionalità di messaggistica e di accodamento dei messaggi supportate da qualsiasi applicazione. Tali funzionalità possono inoltre essere utilizzate su qualsiasi combinazione di computer su cui è installato Microsoft Windows, anche se non si trovano sulla stessa rete o non sono in linea contemporaneamente.

Una rete di Accodamento messaggi è rappresentata da un insieme di computer tra cui è possibile eseguire l'invio di messaggi. I diversi computer nella rete svolgono ruoli diversi nel garantire la corretta esecuzione del sistema di messaggistica. Alcuni consentono di ottenere informazioni sul routing per determinare la modalità di invio dei messaggi, altri contengono le informazioni principali relative all'intera rete e altri vengono utilizzati per inviare e ricevere semplicemente i messaggi.

Durante l'installazione di Accodamento messaggi, un amministratore sceglie i server che possono comunicare tra loro e imposta ruoli speciali per specifici server. I computer che costituiscono la rete di Accodamento messaggi sono definiti siti e sono connessi tra loro mediante collegamenti di sito. A ciascun collegamento di sito è associato un costo, determinato dall'amministratore, che indica la velocità con cui i messaggi possono passare attraverso di esso.

L'amministratore di Accodamento messaggi designa, inoltre, uno o più computer nella rete come server di routing. Un server di routing consente di scegliere la modalità di consegna di un messaggio confrontando il costo dei diversi collegamenti di sito e determinando il metodo più rapido ed efficace per il recapito del messaggio in più siti.

Nell'immagine riportata di seguito viene illustrata una configurazione tipica dei siti di Accodamento messaggi e la relativa modalità di interazione.

Routing dei messaggi tra i siti

Routing dei messaggi

Suggerimento:

Non è necessario prendere in considerazione le informazioni relative al routing dei messaggi durante lo sviluppo, in quanto la rete di Accodamento messaggi può essere ottimizzata dagli amministratori in modo da garantire la consegna corretta dei messaggi.

Tipi di code

Esistono due principali categorie di code: code create dagli utenti della rete e code di sistema. Le code create dagli utenti possono essere una qualsiasi delle seguenti:

  • Code pubbliche, replicate attraverso la rete di Accodamento messaggi e potenzialmente accessibili da tutti i siti connessi tramite la rete.

  • Code private, non distribuite su tutta la rete, ma disponibili solo sul computer locale in cui sono contenute. Alle code private è possibile accedere solo dalle applicazioni in cui è noto il nome di percorso completo o l'etichetta della coda.

  • Code di amministrazione, contenenti i messaggi in cui è riconosciuta l'avvenuta ricezione dei messaggi inviati all'interno di una determinata rete di Accodamento messaggi. È necessario specificare la coda di amministrazione che si desidera venga utilizzata dai componenti MessageQueue, se disponibili.

  • Code di risposta, contenenti i messaggi di risposta restituiti all'applicazione di invio quando il messaggio viene ricevuto dall'applicazione di destinazione. È necessario specificare la coda di risposta che si desidera venga utilizzata dai componenti MessageQueue, se disponibili.

Le code generate dal sistema rientrano in genere in una delle seguenti categorie:

  • Code diario, in cui sono memorizzate in maniera facoltativa le copie dei messaggi inviati e le copie dei messaggi rimossi da una coda. In una singola coda diario su ciascun client di Accodamento messaggi sono memorizzate le copie dei messaggi inviati da tale computer. Sul server viene creata una coda diario distinta per ogni singola coda. Nel diario è tenuta traccia dei messaggi rimossi dalla coda.

  • Code di messaggi non consegnati, in cui sono archiviate le copie dei messaggi non recapitabili o scaduti. Se il messaggio scaduto o non recapitabile è un messaggio transazionale, verrà memorizzato in un tipo speciale di coda dei messaggi non consegnati definita coda dei messaggi transazionali non consegnati. I messaggi non recapitabili vengono memorizzati nel computer su cui il messaggio è scaduto. Per ulteriori informazioni sui periodi di timeout e sui messaggi scaduti, vedere Proprietà predefinite dei messaggi.

  • Code di report, contenenti messaggi in cui è indicato il percorso effettuato dai messaggi verso la relativa destinazione e anche messaggi di prova. Su ciascun computer può essere presente una sola coda di report.

  • Code di sistema private, una serie di code private in cui vengono archiviati i messaggi amministrativi e di notifica utilizzati dal sistema per l'elaborazione delle operazioni di messaggistica.

La maggior parte delle operazioni eseguite nelle applicazioni in uso implica l'accesso alle code pubbliche e ai relativi messaggi. È tuttavia probabile che si utilizzino diversi tipi di code di sistema nelle operazioni quotidiane, a seconda che nell'applicazione in uso siano necessarie la registrazione e il riconoscimento di diari e altre operazioni speciali di elaborazione.

Comunicazione sincrona e asincrona

La comunicazione tra le code è sostanzialmente asincrona in quanto i messaggi vengono inviati a una coda e ricevuti da una coda in processi distinti. È inoltre possibile eseguire operazioni di ricezione in modo asincrono. L'utente che desidera ricevere un messaggio può chiamare il metodo BeginReceive per qualsiasi coda specifica ed eseguire immediatamente altre attività senza attendere alcuna risposta. Questo processo è molto differente da quello noto come comunicazione sincrona.

Nella comunicazione sincrona il mittente di una richiesta deve attendere una risposta da parte del destinatario desiderato prima di effettuare altre operazioni. Il tempo di attesa del mittente dipende interamente dalla quantità di tempo necessaria per l'elaborazione della richiesta e l'invio di una risposta da parte del destinatario.

Nota:

Il recupero sincrono o asincrono dei messaggi è differente dall'invio dei messaggi. I messaggi sono sempre inviati in modalità asincrona.

Per ulteriori informazioni sull'elaborazione asincrona nelle code di messaggi, vedere Elaborazione asincrona dei messaggi.

Protezione dei messaggi

Per consentire la protezione del contenuto dei messaggi inviati e ricevuti, utilizzare uno dei seguenti metodi:

  • È possibile utilizzare l'autenticazione per verificare l'origine dei messaggi ricevuti dalle applicazioni.

  • È possibile utilizzare la crittografia per garantire che i messaggi non vengano letti o utilizzati da utenti non autorizzati.

  • È possibile utilizzare i diritti di controllo di accesso per impedire agli utenti mediante la protezione basata su ACL e al codice mediante la protezione dall'accesso di codice di inviare o leggere i messaggi da una specifica coda su un computer.

  • È possibile utilizzare il controllo per registrare gli utenti che tentano di accedere agli oggetti di Accodamento messaggi, il tipo di operazione che hanno tentato di eseguire e per verificare se l'accesso sia stato eseguito o meno.

Per ulteriori informazioni, vedere Protezione delle code di messaggi.

Installazione di Accodamento messaggi

Per utilizzare le code di messaggi nel codice o in Esplora server è necessario installare Accodamento messaggi nel computer di sviluppo. Le istruzioni relative all'installazione di Accodamento messaggi sono disponibili nella documentazione di Windows 2000 o Windows NT. Durante l'installazione, è necessario specificare se si sta creando un nuovo server primario di Accodamento messaggi che verrà utilizzato come hub di una nuova rete, un client indipendente di una rete esistente o un client dipendente di una rete esistente. Nella maggior parte dei casi non si crea una nuova rete, ma si farà parte della rete di Accodamento messaggi esistente per la propria azienda o il proprio gruppo di lavoro.

Indicazioni per letture complementari

Nelle successive pagine di questa sezione vengono fornite le informazioni necessarie per utilizzare i componenti di Accodamento messaggi nelle applicazioni. Per ulteriori informazioni sulle tecnologie di messaggistica all'esterno del contesto di Visual Studio o .NET Framework, sono disponibili numerose fonti di informazioni in MSDN Library e sul sito Web di Microsoft:

Per informazioni su

Vedere la seguente sezione nella documentazione di Windows 2000 Server

Configurazione di una rete di Accodamento messaggi

Installazione di Accodamento messaggi

Concetti generali relativi ad Accodamento messaggi

Accodamento messaggi

Ottimizzazione delle prestazioni di Accodamento messaggi

Cenni preliminari sull'amministrazione di Accodamento messaggi

Vedere anche

Altre risorse

Utilizzo dei componenti di messaggistica