Unleashは、チームが新しい機能をいつ、どのようにエンドユーザーに展開するかを制御できるようにすることで、ソフトウェアのデリバリーを合理化するために設計された機能管理プラットフォームです。その核心となるシステムは「機能フラグ」を使用しており、これは構成に基づいて特定の機能を有効または無効にするコード内の条件付きロジックです。このアプローチにより、開発者はコードをより小さく管理可能な単位で本番環境にデプロイでき、大規模な障害のリスクを軽減し、実際の本番データを使用したより安全なテストを可能にします。

この図は、Unleashプラットフォームの基礎となるインフラストラクチャとシステム概要を説明しています。
基本的な機能フラグは手動で実装することも可能ですが、Unleashは複雑な管理タスクを処理するプロダクション向けのインフラストラクチャを提供します。このプラットフォームは、カナリアリリース(ユーザーの一部への段階的な展開)やA/Bテストなどの高度なアクティベーション戦略をサポートしています。また、技術的負債の監視や、古くなったフラグの管理のための統合ツールも提供しています。高いパフォーマンスとデータのプライバシーを確保するため、UnleashはサーバーサイドSDKにおいてローカル評価モデルを採用しています。フラグを確認するたびにネットワークコールを行うのではなく、SDKが構成を取得してプロセス内で評価を行うため、ユーザーデータがアプリケーション外に出ることがなく、フラグのチェックが低レイテンシのメモリ参照として維持されます。
幅広い環境間で一貫性を維持するために、Unleashは「Yggdrasil」と呼ばれる共有評価エンジンを採用しています。Rustで記述されたこのエンジンは、フラグ評価のコアロジックを提供し、25以上の異なるプログラミング言語向けのSDKに組み込まれています。これにより、使用する言語やフレームワークに関係なく、機能フラグの動作が同一であることが保証されます。フロントエンドおよびエッジクライアント向けには、UnleashはRustベースのプロキシおよびキャッシュである「Unleash Edge」を提供します。このコンポーネントは、大量のフロントエンドクライアントによってメインのUnleashサーバーが過負荷になるのを防ぎ、システムを独立してスケールさせることを可能にします。オープンソース版はコアエンジンを提供しますが、プラットフォームは、ロールベースのアクセス制御(RBAC)、シングルサインオン(SSO)、および自動ユーザープロビジョニングのためのSCIMなど、高度なガバナンス機能を必要とする組織向けのエンタープライズティアも提供しています。