Le factory di connessione Sito
Una factory di connessione è un oggetto che un client Dati (un programma Dati che utilizza l'API Dati ) utilizza per creare una connessione con un provider JNDI (un provider di messaggistica come IBM® MQ).
È possibile utilizzare IBM MQ Explorer per creare le factory di connessione e per definire i parametri di connessione che la factory di connessione utilizzerà per creare connessioni.
Le fabbriche di connessione, come le destinazioni, sono oggetti amministrati e vengono memorizzati in uno spazio dei nomi JNDI , ovvero una posizione definita all'interno del servizio di denominazione e directory. Il contesto iniziale definisce il root dello spazio dei nomi JNDI . In IBM MQ Explorer, tutte le factory di connessione sono memorizzate nelle cartelle di Connection Factories nell'apposito contesto e sottocontesti, come mostrato nella seguente figura.
Nella figura, la factory di connessione denominata Connection Factory 1
è memorizzata nella cartella Factory di connessione del contesto iniziale denominato File System Initial Context
.
Quando si definisce una factory di connessione, si seleziona il provider di messaggistica utilizzato come fornitore Dati (ad esempio, IBM MQ o Real - time); una factory di connessione può creare connessioni solo a quel provider di messaggistica. Per il client Mente per creare connessioni a un diverso provider di messaggistica, è necessario creare una nuova factory di connessione e specificare il provider di messaggistica. Il trasporto in tempo reale non è disponibile in IBM MQ 8,0. Se si utilizza IBM MQ 8,0 è possibile definire il trasporto a tempo reale, ma non riesce quando viene effettuato un tentativo di creare una connessione.
Factory di connessione indipendenti dal dominio
Ci sono due domini di messaggistica: il dominio point-to-point e il dominio di pubblicazione/sottoscrizione. È possibile creare una factory di connessione per creare connessioni specificamente per messaggi point-to-point (utilizzando l'interfaccia QueueConnectionFactory) oppure specificamente per messaggi di pubblicazione/sottoscrizione (utilizzando l'interfaccia TopicConnectionFactory). Da JNDIè possibile creare anche delle factory di connessione che sono di dominio indipendenti e quindi possono essere utilizzate sia per la messaggistica point-to-point che per la messaggistica di pubblicazione / sottoscrizione (utilizzando l'interfaccia ConnectionFactory). Per ulteriori informazioni, consultare Creazione di una factory di connessione.
Se l'applicazione JMS intende utilizzare solo messaggistica point-to-point o solo la messaggistica di pubblicazione / sottoscrizione, è possibile selezionare il dominio di messaggistica specifico quando si crea la factory di connessione e viene creata una factory di connessione specifica del dominio.
Se, tuttavia, si desidera eseguire entrambe le messaggistiche nella stessa transazione, è possibile creare una factory di connessione indipendente dal dominio. Ad esempio, si potrebbe desiderare un'applicazione di tipo di JMS per sottoscrivere un argomento (messaggistica edita/sottoscrivi) poi quando l'applicazione Sito riceve un messaggio particolare, invia un altro messaggio ad una coda (messaggistica punto - punto). È difficile eseguire in maniera affidabile entrambe le messaggistiche nella stessa transazione se si utilizzano factory di connessione specifiche del dominio: è necessario creare una factory di connessione differente per ciascun dominio di messaggistica; pertanto, la messaggistica point-to-point viene eseguita in una transazione controllata dalla sessione QueueSession, mentre la messaggistica pubblicazione/sottoscrizione viene eseguita in una transazione controllata dalla sessione TopicSession. È difficile assicurare che le azioni di invio e di ricezione abbiano luogo entrambe oppure che venga eseguito il backout di entrambe.
Anziché creare una factory di connessione specifica del dominio per la messaggistica point-to-point e uno per la messaggistica pubblicazione/sottoscrizione, è possibile creare una singola factory di connessione indipendente dal dominio per entrambe. Ciò significa che la factory di connessione crea una singola connessione che crea una singola sessione. La sessione crea un MessageConsumer da un argomento e un MessageProducer in una coda. Quando l'applicazione JMS riceve il messaggio pubblicato, il messaggio successivo può essere inviato alla coda sotto la stessa transazione di sessione; entrambe le operazioni possono quindi essere impegnate o arrotolate come un'unica unità di lavoro.
Per ulteriori informazioni, consultare Utilizzo delle classi IBM MQ per il servizio di in IBM Documentazione.