パーセンテージベースのフィーチャーロールアウト
パーセンテージベースのロールアウトでフィーチャーフラグを設定し、ローンチ時のリスクを軽減しながら、ユーザーの一部に段階的に機能を公開します。
Rollout Strategies
詳細な説明
パーセンテージベースのロールアウト
パーセンテージロールアウトは、ユーザーベースの一部に機能をリリースします。全か無かのローンチではなく、問題を監視しながら段階的にパーセンテージを増やします。
設定例
{
"new-checkout-flow": {
"name": "New Checkout Flow",
"description": "ステップ数を減らしたリデザインされたチェックアウト体験",
"type": "boolean",
"enabled": true,
"defaultValue": false,
"targeting": [
{
"type": "percentage-rollout",
"percentage": 10
}
]
}
}
パーセンテージハッシュの仕組み
パーセンテージは各リクエストでランダムではありません。ユーザーのIDがハッシュされて0-99の一貫したバケット番号が生成されます。ユーザーがバケット0-9に入る場合(10%ロールアウトの場合)、機能が表示されます。これにより同じユーザーが常に同じ体験を得ることが保証されます。
推奨ロールアウトスケジュール
| フェーズ | パーセンテージ | 期間 | 目的 |
|---|---|---|---|
| カナリア | 1-2% | 1-2時間 | クリティカルなバグの発見 |
| 初期 | 5-10% | 1-2日 | パフォーマンスメトリクスの監視 |
| 中期 | 25-50% | 3-5日 | スケールでの検証 |
| 広範 | 75-90% | 2-3日 | 最終検証 |
| 完全 | 100% | 恒久的 | ロールアウト完了 |
Unleashストラテジー
Unleashでは、gradualRolloutUserIdストラテジーをpercentageパラメータと一貫したバケッティング用のgroupIdで使用します。
監視のヒント
- フラグバリエーション(オンvsオフ)別にエラー率を追跡する
- グループ間のページロード時間を比較する
- 機能がファネルに影響する場合はコンバージョン率を監視する
- 機能オングループの異常についてアラートを設定する
ユースケース
ECプラットフォームのリデザインされたチェックアウトフローのロールアウト。クリティカルな問題を検出するために2%のユーザーから開始し、24時間のクリーンなメトリクス後に10%に増加、その後1週間かけて段階的に100%に到達します。