【あっともすとわんすはいしん】
At Most Once配信 とは?
最終更新:
💡 届く回数は最大1回。届かないこともある
対象のメッセージが受信側へ0回または1回届く配信保証。重複配信を避ける一方、届かない可能性がある。どの送受信区間や処理が保証の対象かを確認する必要がある。
📌 このページのポイント
最大1回なら、必ず1回は届く?
0回か1回なので、届かないこともあるよ。保証の対象となる配信では重複しないけれど、メッセージの消失を許容する方式なんだ。
MQTTではどう実現しているの?
他の配信保証とはどう違うの?
Exactly Onceなら注文処理まで全部1回になる?
配信の保証だけでは、外部の決済やアプリが行う処理全体まで1回と保証できないよ。どこまでが対象で、失敗時に何を再試行するのかを確かめよう。
どんなときにAt Most Onceを選ぶの?
たとえば一部の測定値が欠けても次の測定値で補える用途では候補になるよ。失って困るデータか、必要な処理や確認の負担は何かを見て選ぶんだ。速さを一律に順位付けはできないよ。
もっと詳しく知りたい人へ
MQTTのQoS 0は送信元から購読者まで一つの保証?
MQTT 5.0の配信手順は一つの送信側から一つの受信側への配信を対象にする。クライアントからサーバーへの受信と、サーバーから各購読クライアントへの送信ではQoSが異なり得る。アプリが同じ内容を新しいメッセージとして送る場合も、元の配信とは分けて考える。
まとめ:ざっくりこれだけ覚えればOK!
「At Most Once配信」って出てきたら「0回か1回届く配信保証」と思えばだいたいOK!
📖 おまけ:英語の意味
「At Most Once Delivery」 = 最大1回配信
💬 At most onceは「多くとも1回」という意味だよ。1回は届く場合だけでなく、0回、つまり届かない場合も含むよ