OCI Queueは、1秒間に数百万のメッセージを取り込むことができる高可用性、高スループットのキュー・サービスです。ユーザーは、Queue内のメッセージを公開、消費、削除することができ、メッセージの可視性を更新することもできます。
OCI Queueは、STOMPだけでなく、SDKによるRESTful APIもサポートしています。
Queueは、標準キュー(ベストエフォート型の順序)をサポートしています。FIFOキュー(厳密な順序指定)は今後追加されるかもしれない機能であり、スケジュールはまだ決まっていません。この機能が必要な場合は、サポートリクエストを出すか、OCIアカウント・マネージャーにご連絡ください。
OCI QueueのSLAでは、99.9%のアップタイムと最大7日間のメッセージ保持を約束しています。
サポートリクエストを送信することで、一部の制限を増やすことができます。
次のしきい値を超えると、スロットルメカニズムが有効になります。
パラメータ | お客様のソフト制限 |
---|---|
スループット・スロットル制限 | 1キューあたり10MB/秒のイングレスと10MB/秒のエグレスデータ(ソフト) |
Oracle DevRel GitHubリポジトリにサンプルコードがあります。または、以下の手順でIDEを設定してください。
com.oracle.oci.sdk
oci-java-sdk-queue
3.2.0
SDKの一部の機能は、OCI Queueの公開GitHubリポジトリにあるサンプルで紹介されています。
以下のAPIを提供しています。
キュー管理API
メッセージングAPI
APIエラーの詳細は、ドキュメントに記載されています。
purge文は結果整合性を持ちます。つまり、purge 文以前に発行されたすべてのメッセージが削除され、さらにキューがpurgeされている状態(より厳密には、purgeライフサイクル状態の詳細で更新されている状態)にある間に発行されたメッセージも削除される可能性があります。PutMessages文はpurge操作の間ブロックされませんが、そのメッセージは削除される可能性があります。
purgeされたメッセージは GetMessages文によって返されず、キュー統計に影響しないことが保証されます。それでも、メッセージの削除処理は非同期であるため、ある程度の時間がかかる可能性があります。その間、有効なレシートがあれば、purgeされたメッセージの更新や削除の操作は可能です。
いいえ。メッセージの処理に成功した後、クライアントがDeleteMessage APIを呼び出してメッセージを削除する必要があります。これを行わない場合、メッセージはキューに戻され(表示タイムアウト後)、その後のGetリクエスト時に返されます。