觀點 · 資訊分享

Cloudflare 推出 Flagship 公開測試版:新功能的「開關」直接放在 Workers 裡判斷

Cloudflare 在 5 月 26 日讓功能旗標服務 Flagship 進入公開測試。Workers 判斷開關時不用再對外發 HTTP 請求,還支援百分比逐步放量與 OpenFeature SDK。

發布
2026-05-26
篇幅
約 3 分鐘 · 1,331 字
結構
7 節 + 3 題常見問題
標籤
#Cloudflare#Flagship#Feature Flag#Workers#OpenFeature
Cloudflare 推出 Flagship 公開測試版:新功能的「開關」直接放在 Workers 裡判斷

一句話看懂:Cloudflare 讓「功能開關」服務 Flagship 進入公開測試,Workers 判斷開關時不用再對外發請求,新功能可以一小群一小群慢慢放出去。

Cloudflare Flagship 進入公開測試資訊圖卡:功能開關服務直接跑在 Workers 裡,判斷不用再對外發請求

先用白話講:功能旗標是什麼?

想像你家客廳有一排電燈開關。新裝好的吊燈已經接好線,但你先不讓它亮,等確認沒問題才按下開關。要是燈一亮就跳電,把開關關回去就好,不用拆掉重裝。

功能旗標(Feature Flag)就是程式裡的這種開關。工程師先把新功能寫好,預設是關的,需要的時候在後台打開,出問題就立刻關掉,不必重新部署整個網站。

還有一種常見用法是「只開給一小部分人」,例如先讓 10% 的訪客看到新的結帳頁,沒問題再慢慢放大。

發生什麼事

Cloudflare 在 5 月 26 日的更新日誌宣布,Flagship 進入公開測試(public beta)。這是一個功能旗標服務,重點有這幾項:

  • 在 Workers 裡直接判斷旗標,判斷過程沒有對外的 HTTP 呼叫
  • 旗標設定分散在全球,底層由 Workers KV 與 Durable Objects 支撐
  • 旗標值有型別(不只是開或關)
  • 支援目標規則、百分比放量與稽核紀錄
  • SDK 相容 OpenFeature(一個開放的旗標規格)

跟自己做或用外部服務有什麼不同?

項目 旗標放外部服務 用 Flagship
判斷位置 常要多打一趟網路 Workers 內直接判斷
設定散布 依服務商而定 跟著全球節點
開發方式 各家 SDK 不同 相容 OpenFeature

表格是依官方描述做的概念整理,不代表實測效能差異。

給開發者的技術細節

官方給的範例是在 Worker 裡用 env.FLAGS 讀取布林旗標:

export default {
  async fetch(request, env) {
    const showNewCheckout = await env.FLAGS.getBooleanValue("new-checkout", false);
    return new Response(showNewCheckout ? "New checkout" : "Standard checkout");
  },
};
  • 第二個參數 false 是預設值,找不到旗標時就用它
  • 旗標可以直接從 Cloudflare 儀表板建立
  • 公告目前沒有寫明計費方式與正式版時程,使用前請自己翻 Flagship 文件確認

我的看法

接案時常遇到客戶說「新功能先給我自己看,沒問題再開放給大家」。以前我要不是多寫一張設定資料表,就是改完程式碼重新部署一次,其實都不太優雅。

如果專案本來就跑在 Workers 上,Flagship 看起來是個順手的選擇,尤其是百分比放量這種功能,自己寫很容易寫出邊角錯誤。但它現在是測試版,官方沒有說明長期計費,所以我會先拿內部工具或低風險的功能試,不會一開始就把主要流程的開關全押上去。

名詞小辭典

  • Workers:Cloudflare 的無伺服器平台,程式碼直接跑在離使用者近的節點上。
  • Feature Flag(功能旗標):程式裡可以遠端開關的條件,用來控制新功能要不要生效。
  • OpenFeature:一個開放的功能旗標標準規格,讓不同廠商的服務可以用同一套寫法。
  • 公開測試版(Public Beta):任何人都能試用,但功能與規格還可能調整的階段。

資料來源

常見問題

功能旗標(Feature Flag)是什麼?
就是在程式裡留一個可遠端開關的條件:新功能先寫好但預設關著,需要時在後台打開,出問題再關掉,不必重新部署程式。
Flagship 跟一般的旗標服務差在哪?
官方的說法是它直接在 Workers 裡判斷旗標,不用再對外發 HTTP 請求;旗標設定分散在全球,由 Workers KV 與 Durable Objects 支撐。
現在可以用在正式網站嗎?
官方標示是公開測試版(public beta)。官方公告沒有說明正式版時程與計費細節,上線前建議自己再查文件。
LINE