Oracle Advanced Queuingは、Oracle Databaseに組み込まれたメッセージング・プラットフォームで、アプリケーション・ワークフロー、マイクロサービス、およびイベントがトリガーとなるアクションに使用されます。Oracle Database 19cでは、Oracle Transactional Event Queuesが導入され、イベント向けのメッセージングとpub/sub(パブリッシュ / サブスクライブ)の利点が統合されるとともに、Kafkaとの互換性も提供されてます。
イベントドリブンなマイクロサービスやワークフローの開発者は、高スループットで信頼性の高いメッセージング・プラットフォームを必要としています。Oracle TxEventQは、堅牢なリアルタイム・メッセージング、ストリーミング・イベント、および複数のパブリッシャーと複数のコンシューマによるPub/Subを提供します。TxEventQの高スループット・インストールでは、8ノードのOracle Real Application Clusters(RAC)データベース上で1日あたり約1,000億メッセージを処理できます。
Oracle AQはOracle Databaseと統合されているため、トランザクションのメッセージングが可能です。エンキューおよびデキューは、他のデータベース操作と同時に自動的にコミットされ、2フェーズ・コミットを必要としません。標準SQLを使用してメッセージとそのメタデータをクエリできます。マイクロサービス向けのトランザクション送信ボックスのサポートにより、イベントドリブンなアプリケーション開発が簡素化されます。
Oracle TxEventQの開発者向けの主なメリット
Oracle Advanced Queuing(AQ)はOracle Database 8.0で導入されました。バージョン12.2では、KafkaがApacheプロジェクトになったのと同時期に、JMSキューにAQ Sharded Queuesが導入されました。AQ Sharded Queuesは、Oracle Database 21cでTransactional Event Queuesと改名されました。AQ Classic QueuesとTransactional Event Queuesはどちらも、Oracle Databaseのすべての導入環境で無料で使用できます。
配送会社は、配達先住所と個人を確認するためにワンタイム・パスワード(OTP)を使用していますが、ベンダー・アプリケーション、配達員、顧客の間でのメッセージ交換のバックボーンとしてOracle AQを使用しています。コードについては、Oracle AQ LiveLabを参照してください。
多くの国の銀行は、預金引き出しの際の口座認証においてOTPを要求します。Oracle AQを使用してメッセージング・インフラストラクチャを作成し、ATMサーバー・コードと顧客のクライアント・モバイル・アプリ間でOTPを転送する方法をご覧ください。
Oracle AQは、ATM機のOTPと顧客の登録済みモバイルデバイスを同期させる手段として使用できます。
GrabDishは、注文、在庫、配送のマイクロサービス間の通信にOracle AQを使用しているフード・デリバリー・アプリケーションです。Oracle AQ LiveLabを使用したマイクロサービスの簡素化のコードを参照してください。