-
Notifications
You must be signed in to change notification settings - Fork 17
Concepts: Multi Tenancy
Feature flighting service is multi-tenant by default where a single instance can used by multiple applications.
Tenancy is implemented by appending the name of the tenant in the Feature Flag ID. This ensures that 2 tenants can have 2 flags by the same name without causing a conflict. Along with the tenant name the sub-environment is also added in the flag name to ensure that a tenant can create the same feature toggle for multiple environments.
So for a feature flag with following traits
- Flag name - EnableAdvancedTaxCalculation
- Tenant name - FinanceCore
- Sub-environment - SIT
The flag ID would be
FinanceCore_SIT_EnableAdvancedTaxCalculation.
The feature flighting system would take care of creating and maintaining the Flag ID, downstream tenants won't need to create or use the ID. If the tenant name and environment name is passed in the x-application and x-environment headers properly, all necessary processing will taken care by the Feature Flighting System.
If there is no need for multi-tenancy and you want to use the Feature Flighting System for a single application, then you will need to board only a single tenant. However, if you want to multiple applications or downstream tenants to use the same service then a separate Admin team is needed for maintaining the deployed artifacts. The admin team will also have the added responsibility to board any downstream partners.