Utilizza Advanced Queuing con Autonomous Database on Dedicated Exadata Infrastructure

Autonomous Database supporta le code degli eventi transazionali (TEQ) per implementare la funzionalità di accodamento dei messaggi integrata nel database.

Oracle Transactional Event Queues (TEQ)

I moderni sistemi di messaggistica supportano la messaggistica point-to-point e pubblicano/sottoscrivono per scambiare messaggi ed eventi tra le applicazioni. Le applicazioni create come microservizi richiedono messaggistica, così come i sistemi di workflow. Le mesh degli eventi sono sempre più diffuse per il trasporto e l'instradamento degli eventi delle applicazioni tra le applicazioni. Analogamente agli argomenti/partizioni di Apache Kafka, le code degli eventi transazionali utilizzano tabelle di coda/flussi di eventi (le code con partizionamento orizzontale AQ utilizzano tabelle/partizioni di coda) come astrazione del partizionamento.

Transactional Event Queues (TEQ) è l'implementazione partizionata e in-memory di Advanced Queuing, introdotta in Database 12.2.0. 1 (2015). Le code TEQ supportano la specifica JMS ed è possibile accedervi in Java, Python, Node.js, PL/SQL, C/C++, .NET e Go.

Le code degli eventi transazionali (TEQ) memorizzano i messaggi utente in unità di memorizzazione astratte denominate code. Quando i microservizi comunicano tra loro o le applicazioni fanno parte di un flusso di lavoro, le applicazioni producer accodano i messaggi e le applicazioni consumer rimuovono i messaggi dalla coda.

Oracle Transactional Event Queues (TEQ) offre la funzionalità di accodamento dei messaggi integrata nel database. Questa funzionalità sfrutta le funzioni di Oracle Database in modo che i messaggi possano essere memorizzati in modo persistente, propagati tra code su computer e database diversi e trasmessi utilizzando Oracle Net Services e HTTP(S). Per ulteriori informazioni, vedere Oracle Database Advanced Queuing nel manuale Oracle Database 19c Advanced Queuing User's Guide o Oracle Database 23ai Advanced Queuing User's Guide.

Implementazione dell'accodamento dei messaggi in Autonomous Database

Oracle Transactional Event Queues (TEQ) fornisce le interfacce riportate di seguito per implementare l'accodamento dei messaggi.
  • Interfaccia amministrativa: raccolta di package PL/SQL con sottoprogrammi che consente di gestire code, tabelle di coda, trasformazioni e altri task amministrativi quali la concessione e la revoca di privilegi agli utenti TEQ. Per accedere a questi sottoprogrammi, è necessario connettersi come utente con privilegi amministrativi. Per informazioni su come creare un utente amministrativo, vedere Elenco di esempi in Oracle Database 19c o Oracle Database 23ai.
  • Interfaccia programmatica: Oracle Database Advanced Queuing offre interfacce di programmazione per vari linguaggi di programmazione come PL/SQL, C, Java (JMS) e AQ XML (servlet) per implementare l'ambiente applicativo Advanced Queuing (AQ). Per un elenco delle interfacce programmatiche AQ, delle funzioni supportate in ciascuna interfaccia e dei riferimenti alla sintassi, vedere Interfacce programmatiche per l'accesso a Oracle Database Advanced Queuing in Oracle Database 19c o Oracle Database 23ai.

Suggerimento

Per un'alternativa che dimostri come utilizzare Advanced Queuing, puoi seguire le istruzioni descritte nel workshop per la creazione di microservizi con Oracle Converged Database.