Cloudflare KV (Key-Value Store)¶
Cloudflare KV (Key-Value Store) 是一個分散式的鍵值資料庫,通常作為 Cloudflare Workers 的資料儲存後端。其核心機制非常簡單:提供一個 key(鍵)並回傳對應的 value(值)^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
這種架構使其非常適合用於儲存短網址服務中的對應關係,或是其他需要快速讀取的配置型資料^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
Usage with Workers¶
在 Cloudflare Workers 專案中使用 KV 時,需要透過 CLI 工具(如 Wrangler)建立 KV namespace,並將其 ID 綁定到專案的設定檔(如 wrangler.jsonc)中^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
- Namespace Binding: 設定檔中的
binding名稱即為程式碼中存取 KV 資料庫的變數名稱^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。 - TypeScript Support: 可以透過指令自動產生 TypeScript 型別定義,確保開發過程中的型別安全^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
Free Tier Limits¶
Cloudflare KV 提供免費額度,通常足以應付個人或小型專案的需求^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]:
- 寫入: 1,000 次/天^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]
- 讀取: 100,000 次/天^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]
Common Use Cases¶
在應用層面上,KV 常用於處理兩種主要的資料操作邏輯^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]:
- 寫入: 接收資料(例如長網址),生成識別碼(短碼),並將其存入 KV^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
- 讀取: 根據識別碼查詢 KV,取出原始資料(如原始 URL),並進行後續處理(如 302 Redirect)^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
由於 KV 採用鍵值對應的結構,開發者必須自行處理資料衝突檢查(例如在寫入前檢查 Key 是否已存在,以避免舊資料被覆蓋)^[001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md]。
Related Concepts¶
- Cloudflare Workers
- [[Serverless]]
- [[Cloudflare D1]]
Sources¶
001-TODO__Cloudflare_Workers_自架短網址_-_10_分鐘完工教學.md