すべてのプロダクト
Search
ドキュメントセンター

:コア概念

最終更新日:Mar 20, 2020

キューの説明

メッセージはキューに格納しています。メッセージにはデータと属性が含まれています。MessageIdとReceiptHandleはキューに格納されているメッセージを識別するために使用される2種類の識別子です。

アカウント

AlibabaクラウドサービスのユーザーIDです。

キューのオーナー

メッセージサービスのCreateQueue APIによりキューを作成した場合、該当アカウントがキューのオーナーになります。キューのオーナーはキューに対して全ての操作権限を持ちます。AccountIDはAlibaba Cloud WebSiteから確認可能です。

producer

メッセージの送信者(キューに送信します)。

Consumer

メッセージの受信者、キューの中からメッセージを削除します。

Endpoint

メッセージサービスのアクセスURLであり、フォーマートは以下の形になります。https://$AccoundId.mns.$Region.aliyuncs.com
$Regionはメッセージサービスが展開された地域です。
$AccountIdはユーザーがAlibabaクラウドサービスを登録時に作成したユーザーIDです。

Normal Message

キューに送信され、受信者がすぐに受け取ることが可能なメッセージです。

Delay Message

キューに送信され、遅延期間が終了するまで受信者は受け取ることができません。

Normal Queue

メッセージの遅延時間はデフォルトでゼロに設定されます。つまり、遅延時間が設定されていないため、すぐにキューから受信可能です。

Delay Queue

メッセージの遅延時間はデフォルトでゼロ以上に設定されます。指定された時間後にメッセージが受信可能になります。

MessageID

キューの中のメッセージを識別するためのIDです。同じキューの中でメッセージは重複しないMessageIDが付与されています。ただし、MessageIDは異なるキューの間では重複している可能性があります。MessageIDはメッセージの作成者がメッセージサービスによりメッセージをキューに送信する際に作成されます。メッセージ送信リクエストをキューに送信するとメッセージサービスによりMessageIDが返されます。
注意:MessageIDを使用してメッセージを削除することはできません。

ReceiptHandle

ReceiptHandleはメッセージサービスにより作成され、メッセージを受信する時受信者に返された一時的な識別子です。受信者はReceiptHandleを使用してメッセージの削除や、メッセージのvisibility timeout値を変更することができます。ただし、ReceiptHandleはメッセージのステータスが変わると期限切れになります。

メッセージのステータス

mns_message_status

キュー内のメッセージには3つのステータスがあります: Active, Delayed, Inactive:
Normal Messageは、Activeの状態で初期化されます。Delay messageはDelayedの状態で初期化されます。
Delayedの状態にあるメッセージの合計時間が設定された遅延時間に達すると、Active状態に遷移します。
Active状態のメッセージは受信者が受信すると、メッセージの状態がInactive状態に遷移し、 受信者から見えなくなります。
全てのInactive状態のメッセージに対してvisibility timeout値が設定されています。visibility timeout値で設定された時間内で受信者により削除されなかった場合、メッセージの状態が再びActiveに遷移します。
メッセージの遅延時間とvisibility timeout時間はユーザアプリケーションで指定することができます。

メッセージライフサイクル