Esplorare il bus di servizio di Azure
Bus di servizio di Azure: broker di messaggi aziendale completamente gestito, con code di messaggi e argomenti di pubblicazione-sottoscrizione. Il bus di servizio viene usato per disaccoppiare applicazioni e servizi. I dati vengono trasferiti tra applicazioni e servizi diversi usando i messaggi. Un messaggio è un contenitore decorato con metadati che contiene dati. I dati possono essere qualsiasi tipo di informazioni, tra cui dati strutturati codificati con formati comuni come i seguenti: JSON, XML, Apache Avro e testo normale.
Di seguito sono riportati alcuni scenari di messaggistica comuni:
- Messaggistica. trasferimento di dati aziendali, ad esempio ordini di vendita o di acquisto, giornali di registrazione o movimenti di magazzino.
- Separazione delle applicazioni. Miglioramento dell'affidabilità e della scalabilità di applicazioni e servizi. Client e servizio non devono essere online nello stesso momento.
- Argomenti e sottoscrizioni. Abilitazione di relazioni 1:n tra editori e sottoscrittori.
- Sessioni di messaggistica. implementazione di flussi di lavoro che richiedono l'ordinamento dei messaggi o il rinvio dei messaggi.
Livelli del bus di servizio
Il bus di servizio offre livelli Basic e Premium. Il livello Premium di messaggistica del bus di servizio gestisce le richieste comuni dei clienti relative a scalabilità, prestazioni e disponibilità per applicazioni cruciali. Il livello Premium è consigliato per gli scenari di produzione. Anche se i set di funzionalità sono quasi identici, questi due livelli di messaggistica del bus di servizio sono progettati per gestire diversi casi d'uso. Per altre informazioni sui livelli disponibili, visitare Prezzi del bus di servizio.
La tabella seguente illustra alcune differenze generali tra i livelli Premium e Standard.
Premium | Standard |
---|---|
Velocità effettiva elevata | Velocità effettiva variabile |
Prestazioni prevedibili | Latenza variabile |
Prezzi fissi | Prezzi variabili con pagamento in base al consumo |
Possibilità di aumentare e ridurre il carico di lavoro | N/D |
Dimensioni del messaggio fino a 100 MB | Dimensioni del messaggio fino a 256 KB |
Funzionalità avanzate
Il bus di servizio include funzionalità avanzate che consentono di risolvere problemi di messaggistica più complessi. La tabella seguente descrive diverse di queste funzionalità.
Funzionalità | Descrizione |
---|---|
Sessioni di messaggistica | Per creare una garanzia FIFO (First-In-First-Out) nel bus di servizio, usare le sessioni. Le sessioni di messaggi consentono la gestione esclusiva e ordinata di sequenze illimitate di messaggi correlati. |
Inoltro automatico | la funzionalità di inoltro automatico concatena una coda o una sottoscrizione a un'altra coda o a un altro argomento che si trova nello stesso spazio dei nomi. |
Coda di messaggi non recapitabili | il bus di servizio supporta una coda di messaggi non recapitabili. Una coda di messaggi non recapitabili contiene messaggi che non possono essere recapitati a nessun destinatario. Il bus di servizio consente di rimuovere i messaggi dalla coda di messaggi non recapitabili e di esaminarli. |
Recapito pianificato | è possibile inviare messaggi a una coda oppure a un argomento per l'elaborazione posticipata. È possibile pianificare un processo affinché diventi disponibile per l'elaborazione da parte di un sistema in un determinato momento. |
Differimento dei messaggi | Un client di coda o di sottoscrizione può rinviare il recupero di un messaggio fino a un momento successivo. Il messaggio rimane nella coda o nell'abbonamento, ma viene messo da parte. |
Transazioni | Una transazione raggruppa due o più operazioni in un ambito di esecuzione. Il bus di servizio supporta il raggruppamento di operazioni rispetto a un'unica entità di messaggistica nell'ambito di una singola transazione. Un'entità di messaggistica può essere una coda, un argomento o una sottoscrizione. |
Filtraggio e azioni | I sottoscrittori possono definire i messaggi che vogliono ricevere da un argomento. Per specificare tali messaggi, viene usata una o più regole di sottoscrizione denominate. |
Eliminazione automatica durante l'inattività | L'eliminazione automatica in caso di inattività consente di specificare un intervallo di inattività dopo il quale la coda viene automaticamente eliminata. La durata minima è 5 minuti. |
Rilevamento duplicati | Un errore può causare nel cliente un dubbio sul risultato di un'operazione di invio. Il rilevamento dei duplicati consente al mittente di inviare nuovamente lo stesso messaggio o permette alla coda o all'argomento di eliminare eventuali copie duplicate. |
Protocolli di sicurezza | Il bus di servizio supporta i protocolli di sicurezza, ad esempio firme di accesso condiviso, controllo degli accessi in base al ruolo e identità gestite per risorse di Azure. |
Ripristino di emergenza geografico | Quando le aree o i data center di Azure riscontrano tempo di inattività, il ripristino di emergenza geografico fa in modo che l'elaborazione dei dati continui a funzionare in un'area o in un data center diverso. |
Sicurezza | Il bus di servizio supporta i protocolli AMQP 1.0 e HTTP/REST standard. |
Conformità a standard e protocolli
Il protocollo di collegamento principale per il bus di servizio è Advanced Messaging Queueing Protocol (AMQP) 1.0, uno standard ISO/IEC aperto. Consente ai clienti di scrivere applicazioni che funzionano con il bus di servizio e i broker locali, ad esempio ActiveMQ o RabbitMQ. La guida del protocollo AMQP fornisce informazioni dettagliate nel caso si decida di creare tale astrazione.
Il bus di servizio Premium è completamente conforme all'API JavaJakarta EE Java Message Service (JMS) 2.0.
Librerie client
Le librerie client del bus di servizio pienamente supportate sono disponibili tramite Azure SDK.
- Bus di servizio di Azure per .NET
- Librerie del bus di servizio di Azure per Java
- Provider del bus di servizio di Azure per Java JMS 2.0
- Moduli del bus di servizio di Azure per JavaScript e TypeScript
- Librerie del bus di servizio di Azure per Python