※これはAnnouncing Oracle Cloud Infrastructure Queueの翻訳です

新しいサーバーレス・メッセージング サービスである Oracle Cloud Infrastructure (OCI) Queue の今後のリリースを発表できることを嬉しく思います。 Queue は現在Limited Availability提供されており、まもなく一般提供されます。 サービスが開始されたときに通知を受け取るには、サインアップしてください。

OCI Queue は、ワークロードの需要に合わせて自動的にスケーリングするフルマネージドのサーバーレス・メッセージ配信サービスです。OCI Queue はアプリケーションを分離し、非同期イベント駆動型アーキテクチャを構築するのに役立ちます。

OCI Queueの概要

OCI Queueは、次の基本原則に基づいています。

  • アプリケーションの分離
  • ペイロードのセキュリティ
  • テクノロジー/ベンダー中立なインターフェイス

疎結合アプリケーション

OCI Queue は、アプリケーションとシステムを分離して、最新のCloud NativeまたはCloud-Agonistic  (マイクロ) サービスベースのアーキテクチャを構築するのに役立ちます。疎結合により、個々のアプリケーション・コンポーネントが独立してスケーリングできるようになり、新しいアプリケーションコンポーネントが構築されると、それらは適切なキューに発行またはサブスクライブできます。

 

ペイロードのセキュリティ

キューの内容は常に保護されます。 キューメッセージは、送信中に TLS と AES 128 暗号化のアプリケーションを使用して暗号化され、メッセージは保存されて消費されるのを待ちます。 セキュリティを強化したいユーザーためにこのサービスは、プロバイダとコンシューマがペイロード自体をさらに暗号化および復号化できるように構築されています。 OCI Queueに接続するには、OCI の認証および認可メカニズムのいずれかを使用する必要があります。

テクノロジー/ベンダー中立なインターフェイス

OCI Queue を使用すると、OpenAPI 仕様で定義されたすべての操作とペイロードで RESTful Web サービスを使用して通信できます。しかしより強力なのは、シンプルなテキスト指向メッセージング・プロトコル (STOMP) を使用してメッセージを送受信する機能です。

STOMPはメッセージング用に設計されたオープン・プロトコルであり、HTTP のようにリクエストごとではなく接続ごとに AuthN/Z が実行されるため、効率を高めることができます。 STOMPをサポートする既存のクライアントは、キューのエンドポイントと認証の詳細を構成することにより、OCI Queueに接続できます。

ユーザーのメリット

フルマネージドの従量制ソリューション

OCI Queueは、インフラストラクチャ管理を必要としない非同期メッセージング・サービスを提供し、より多くの革新を行い、より幅広い設計と実装の決定に集中するのに役立ちます。
OCI Queue の従量制モデルは、管理コストと、メッセージング・インフラストラクチャのプロビジョニングと保守の労力を削減するのに役立ちます。またOCIは、従来、WebLogic JMSやKafkaをはじめとしたメッセージング・ソリューションのデプロイに関連付けられていたメンテナンスのアクティビティを活用して、サーバやストレージなどのリソースの割り当てを自動的に管理します。OCI Queueの従量制モデルは、監視、レポート、サポート、およびメンテナンスのすべてを提供します。

配信保証

OCI Queueは、メッセージ配信の問題を保護し、コンシューマが利用できない場合でもメッセージが失われないようにします。
OCI QueueはデフォルトでDead Letter Queue (DLQ) を提供するため、構成可能な回数を超えてもメッセージがコンシューマに到達しない場合、メッセージは DLQ に送られます。 次に、DLQ 内のメッセージを検査し、配信失敗の理由が解決された後で、メッセージをコンシューマに再配信できます。

 

時折発生する大規模なイベントに対応する拡張性とパフォーマンス

フル マネージド サービスを使用すると、サービスの可用性や、需要を満たすためにサービスをスケールアップまたはスケールダウンすることについて心配する必要はありません。 OCI はトラフィックの急増を監視し、需要に基づいてリソースを自動的に追加し、サービスとストレージのニーズを透過的かつ動的にスケーリングして、ユースケースに対応します。
また、OCI Queue は、コンシューマが制限されている場合でも、短期間で大量のメッセージを取り込むことができ、コンシューマの可用性と帯域幅に従ってメッセージを処理できます。

 

OCI Queueの仕組み

次の図は、プロデューサがメッセージをキューに送信し、2 つのコンシューマがそれを処理しようとする例を示しています。

  1. プロデューサは、デフォルトのメッセージ保持時間でメッセージをキューに送信。プロデューサは、キュー サービスがメッセージを受信して​​保存したという確認を受け取る。
  2. コンシューマ A は、可視性タイムアウト A 内に処理することになっているメッセージを受信。
  3. コンシューマー B は、利用可能な唯一のメッセージがコンシューマー A によって既に消費されているため、何も受信しない。
  4. コンシューマー A は可視性タイムアウト A 内にメッセージを処理できなかったため、メッセージを更新して可視性タイムアウトを延長。
  5. コンシューマ B は再度メッセージを受信しようとするが、利用可能な唯一のメッセージがコンシューマ A によって消費および拡張されたため、受信できない。
  6. 延長表示タイムアウトが経過すると、メッセージが再び表示されるように。
  7. コンシューマー B は 3 回目のメッセージの受信を試みる。コンシューマ B はメッセージを受信。これは、可視性タイムアウト B 内に処理することになる。
  8. コンシューマ A はメッセージを受信しようとするが、コンシューマ B がメッセージを消費したため、何も受信しない。コンシューマー A は、メッセージの表示タイムアウトを延長したり、メッセージを削除したりすることができなくなる。
  9. コンシューマー B はメッセージを正常に処理し、キューからメッセージを削除しようとする。コンシューマー B は、メッセージが完全に削除されたという確認を受け取るため、他のコンシューマーに配信することはできない。

OCI Queueの開始方法

無料のインスタンスを作成することで、今日からOracle Cloud Infrastructureを使い始めることができます。サインアップして、Queueがまもなく一般公開されたときに通知を受け取ることを忘れないでください!
詳細については、次のリソースを参照してください。