Closed2

Feature Flagメモ

sugar-catsugar-cat

[Saasを使わない場合]
選択肢
1.環境変数
Pros
・導入に時間がかからない、楽
・1機能のリリースフラグとしての利用ならこれで十分

Cons
・フロントエンド/バックエンドで統一的に扱えない(同じ機能でもそれぞれ別の環境変数が必要)
・管理対象が複数に増えると管理が煩雑化する(抽象化/中央集権的に扱えるようにはした方が無難)
・Release Togglesとしての機能しか実現が難しい

2.InMemory ProviderとOpenFeature
Pros
・それぞれの言語のsdkがある
・Providerを変えるだけで統一的にFeature Flagを扱えるので後のSaaSへの移行がしやすいかも
・フラグの管理がしやすくなる(?)
Cons
・仕様自体が成熟してない
・導入が手間
・Release Togglesとしての機能しか実現が難しい

[SaaSを使う場合]
Pros
・管理画面がある、誰でも設定でき一覧で見やすい
・A/Bテスト、カナリアリリースなどが実現しやすい
・大体sdkがある(フロント/バックエンド共に)
・大体OpenFeatureで扱える(はず)
・Release/Experimental/Ops/Permission Toggleを統一的に扱える
Cons
・障害点が増える(動的に扱うのか、静的に埋め込んで使うのか色々考えることが増える)
・SaaSによっては課金が発生
・SaaS側の権限制御をしておかないと簡単に誰でも機能のOn/Offができ怖い

このスクラップは2024/08/10にクローズされました