Auto-sync: 2026-04-16 17:30
This commit is contained in:
35
wiki/concepts/Feature-Flag.md
Normal file
35
wiki/concepts/Feature-Flag.md
Normal file
@@ -0,0 +1,35 @@
|
||||
---
|
||||
title: "Feature Flag"
|
||||
type: concept
|
||||
tags: [持续交付, 特性管理, 发布工程]
|
||||
sources: ["https://launchdarkly.com/blog/rto-vs-rpo/"]
|
||||
last_updated: 2025-07-26
|
||||
---
|
||||
|
||||
## Definition
|
||||
Feature Flag(特性开关)是一种将代码部署与功能发布分离的技术,允许在不重新部署的情况下通过配置切换代码执行路径。
|
||||
|
||||
## Key Concepts
|
||||
- Deploy != Release:部署代码但不立即向用户开放
|
||||
- Kill Switch:紧急关闭机制,用于快速禁用问题功能
|
||||
- 渐进式 Rollout:分阶段向用户群发布(1% → 5% → 25% → 100%)
|
||||
|
||||
## Benefits for RTO/RPO
|
||||
- RTO:从小时级降至秒级(只需关闭开关)
|
||||
- RPO:Rollback 时不丢失数据,只需切换代码路径
|
||||
|
||||
## Code Example
|
||||
```javascript
|
||||
if (featureFlag.enabled('new-checkout-flow')) {
|
||||
return newCheckoutProcess();
|
||||
} else {
|
||||
return oldCheckoutProcess();
|
||||
}
|
||||
```
|
||||
|
||||
## Connections
|
||||
- [[Kill Switch]] ← 紧急机制 → [[Feature Flag]]
|
||||
- [[渐进式发布]] ← 发布策略 → [[Feature Flag]]
|
||||
- [[RTO (Recovery Time Objective)]] ← 降低工具 → [[Feature Flag]]
|
||||
- [[RPO (Recovery Point Objective)]] ← 保护工具 → [[Feature Flag]]
|
||||
- [[LaunchDarkly]] ← 平台 → [[Feature Flag]]
|
||||
Reference in New Issue
Block a user