opencode-workflow/skills/async-queue-design/README.zh-TW.md

23 lines
1.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 非同步與佇列設計 (Async Queue Design) 知識合約指南
## 概述
`async-queue-design` 是知識合約用來設計非同步工作流程、佇列主題、生產者、消費者、重試策略、DLQ、排序保證與逾時行為。供 `design-architecture` 在設計非同步模型時參考。
## 核心原則
非同步處理必須有 PRD 需求支撐。不要因為非同步「比較好」或「更有擴展性」就採用。每個非同步決策必須可追溯到特定 PRD 功能需求或 NFR。
## 設計重點
- **何時用非同步**長時運行操作、PRD 要求非同步、多個消費者需反應同一事件、吞吐量需求超過同步處理能力
- **佇列/主題設計**Topic vs Queue 的選擇、訊息結構、排序保證、持久性保證
- **重試策略**最大重試次數、退避策略Fixed、Exponential、Exponential with Jitter、重試預算
- **DLQ 策略**:何時路由到 DLQ、DLQ 訊息保留、監控與警報
- **逾時與取消**:處理逾時的定義、取消訊號機制
## 知識合約職責
- 提供非同步設計的理論指引
- 不直接產生非同步流程規格(由 `design-architecture` 的 Async / Queue Design 章節負責)
## 不應做的事
- 不替系統選擇特定訊息代理
- 不定義具體的佇列名稱或主題名稱
- 不產生實作程式碼