At-Least-Once Queue 0.1.0
順序を保証せず、少なくとも1回配信するメッセージをキューに保存します。
公開パッケージの内容を取得して検証済みです。
Hostの対応や受け入れ判断は、パッケージの公開とは別です。このバージョンを使う前に、利用先のHostで確認してください。
使い方
保存期間は必須で、配信遅延の既定値は0です。一つのキューに接続できるConsumerは最大一つです。送信側と受信側は別々に設定します。
関連するForms: QueueConsumer 0.1.0 · WorkerVersion 0.3.0
定義の説明(英語原文)
Message queue with at-least-once delivery and no ordering guarantee, exactly as fixed by the edge.queue Interface. There is no ordering field: a FIFO queue is a different Form. Message bodies are opaque bytes, a message identity is stable across redeliveries, and a queue has AT MOST ONE consumer — two would split the stream between two retry policies and two dead-letter destinations, which leaves the queue's own behavior unstatable (decision 0020).
設定項目
項目名とスキーマ内の説明は、パッケージに含まれる英語の原文です。日本語の解説は定義に要件を追加するものではありません。
deliveryDelaySeconds
任意 · integer
Default delay before a sent message becomes deliverable, in seconds. Omitting it delivers immediately.
- default: 0
- maximum: 43200
- minimum: 0
messageRetentionSeconds
必須 · integer
How long an undelivered message is retained before it is dropped, in seconds.
- maximum: 1209600
- minimum: 60
設定の例
パッケージに含まれるfixtures/desired.jsonをそのまま掲載しています。完全なHost APIリクエストやOpenTofuの設定ではありません。例のリソース参照とArtifactのダイジェストは、実際の値に置き換えてください。このJSONだけでリソースが作成されることはありません。
{
"deliveryDelaySeconds": 0,
"messageRetentionSeconds": 345600
}設定のスキーマ全文(英語原文)
入れ子の項目、選択肢、すべてのスキーマ制約を以下に掲載しています。Hostが検証する意味上の規則は、定義の説明にも記載されています。
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"additionalProperties": false,
"description": "Message queue with at-least-once delivery and no ordering guarantee, exactly as fixed by the edge.queue Interface. There is no ordering field: a FIFO queue is a different Form. Message bodies are opaque bytes, a message identity is stable across redeliveries, and a queue has AT MOST ONE consumer — two would split the stream between two retry policies and two dead-letter destinations, which leaves the queue's own behavior unstatable (decision 0020).",
"properties": {
"deliveryDelaySeconds": {
"default": 0,
"description": "Default delay before a sent message becomes deliverable, in seconds. Omitting it delivers immediately.",
"maximum": 43200,
"minimum": 0,
"type": "integer"
},
"messageRetentionSeconds": {
"description": "How long an undelivered message is retained before it is dropped, in seconds.",
"maximum": 1209600,
"minimum": 60,
"type": "integer"
}
},
"required": [
"messageRetentionSeconds"
],
"title": "At-Least-Once Queue desired state",
"type": "object"
}ライフサイクル
役割: identity
- create
- read
- update
- delete
- import
- observe
提供するInterface
- edge.queue@1.0.0 — sha256:d8ed5c673cb544f5b2bd61aa66ac1c1a716276cf072232b3a0d06471403c2ff7
パッケージ参照
| 項目 | 値 |
|---|---|
| Kind | AtLeastOnceQueue |
| Package digest | sha256:6777eacc4ce141342f97f4bb06e2adaeb714461c0f2f91226f7f4c6f1a0c19b9 |
| Schema digest | sha256:0355b4d3073bc2707fccb6edd8c90350892059ecf08abfec00a00d950c9eaa0e |
| Tag | forms/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2borggkyltorhw4y3fkf2wk5lf/sha256-6777eacc4ce141342f97f4bb06e2adaeb714461c0f2f91226f7f4c6f1a0c19b9 |
| Source path | forms/releases/k-mvsgozjomzxxe3ltfz2gc23pmzxxe3jomnxw2l2borggkyltorhw4y3fkf2wk5lf/sha256-6777eacc4ce141342f97f4bb06e2adaeb714461c0f2f91226f7f4c6f1a0c19b9 |
| 署名セット | e7f8a39311dd011b8467e97e7f300cabb9a6b06c |
4項目のFormRef
{
"apiVersion": "edge.forms.takoform.com",
"kind": "AtLeastOnceQueue",
"definitionVersion": "0.1.0",
"schemaDigest": "sha256:0355b4d3073bc2707fccb6edd8c90350892059ecf08abfec00a00d950c9eaa0e"
}