Přehled správy funkcí

Tradičně přesouvání nové funkce aplikace vyžaduje úplné opětovné nasazení samotné aplikace. Testování funkce často vyžaduje více nasazení aplikace. Každé nasazení může tuto funkci změnit nebo tuto funkci zveřejnit různým zákazníkům pro účely testování.

Správa funkcí je moderní postup vývoje softwaru, který odděluje vydání funkcí od nasazení kódu a umožňuje rychlé změny dostupnosti funkcí na vyžádání. Používá techniku označovanou jako příznaky funkcí (označované také jako přepínače funkcí a přepínače funkcí) k dynamické správě životního cyklu funkce.

Správa funkcí pomáhá vývojářům řešit následující problémy:

  • Správa větví kódu: Pomocí příznaků funkcí zabalte nové funkce aplikace, které jsou aktuálně ve vývoji. Tato funkce je ve výchozím nastavení "skrytá". Tuto funkci můžete bezpečně odeslat, i když je nedokončí a zůstane v produkčním prostředí. Pomocí tohoto přístupu označovaného jako tmavé nasazení můžete všechny kódy vydat na konci každého vývojového cyklu. Větve kódu už nemusíte udržovat v několika vývojových cyklech, protože daná funkce k dokončení vyžaduje více než jeden cyklus.
  • Testování v produkčním prostředí: Pomocí příznaků funkcí udělte přednostní přístup k novým funkcím v produkčním prostředí. Můžete například omezit přístup k členům týmu nebo interním beta testerům. Tito uživatelé budou mít v testovacím prostředí místo simulovaného nebo částečného prostředí zkušenosti s plnou věrností.
  • Testovací verze: K postupnému zavedení nových funkcí koncovým uživatelům používejte příznaky funkcí. Nejprve můžete cílit na malé procento populace uživatelů a toto procento postupně zvýšit v průběhu času.
  • Okamžité ukončení přepínače: Příznaky funkcí poskytují základní bezpečnostní síť pro vydávání nových funkcí. Funkce aplikací můžete zapnout a vypnout bez opětovného nasazení jakéhokoli kódu. V případě potřeby můžete funkci rychle zakázat bez opětovného sestavení a opětovného nasazení aplikace.
  • Selektivní aktivace: Pomocí příznaků funkcí segmentujte uživatele a do každé skupiny doručte určitou sadu funkcí. Možná máte funkci, která funguje jenom v určitém webovém prohlížeči. Příznak funkce můžete definovat tak, aby funkci viděli a používali jenom uživatelé tohoto prohlížeče. Pomocí tohoto přístupu můžete později seznam podporovaných prohlížečů snadno rozbalit, aniž byste museli provádět změny kódu.

Základní koncepty

Tady je několik nových termínů souvisejících se správou funkcí:

  • Příznak funkce: Příznak funkce je proměnná s binárním stavem zapnutonebo vypnuto. Příznak funkce má také přidružený blok kódu. Stav příznaku funkce aktivuje, jestli se blok kódu spustí.
  • Správce funkcí: Správce funkcí je balíček aplikace, který zpracovává životní cyklus všech příznaků funkcí v aplikaci. Správce funkcí také poskytuje další funkce, včetně příznaků funkcí ukládání do mezipaměti a aktualizace jejich stavů.
  • Filtr: Filtr je pravidlo pro vyhodnocení stavu příznaku funkce. Mezi potenciální filtry patří skupiny uživatelů, typy zařízení nebo prohlížeče, zeměpisné umístění a časová okna.

Efektivní implementace správy funkcí se skládá z alespoň dvou komponent, které pracují na koncertě:

  • Aplikace, která používá příznaky funkcí.
  • Samostatné úložiště, ve které jsou uložené příznaky funkcí a jejich aktuální stavy.

Použití příznaků funkcí v kódu

Základní vzor implementace příznaků funkcí v aplikaci je jednoduchý. Příznak funkce je logická proměnná stavu, která řídí podmíněný příkaz v kódu:

if (featureFlag) {
    // Run the following code
}

Hodnotu staticky můžete nastavit featureFlag :

bool featureFlag = true;

Stav příznaku můžete vyhodnotit na základě určitých pravidel:

bool featureFlag = isBetaUser();

Podmíněné nastavení chování aplikace pro některý z těchto stavů můžete rozšířit:

if (featureFlag) {
    // This following code will run if the featureFlag value is true
} else {
    // This following code will run if the featureFlag value is false
}

Úložiště příznaků funkcí

Pokud chcete efektivně používat příznaky funkcí, musíte externě externalizovat všechny příznaky funkcí používané v aplikaci. Tento přístup můžete použít ke změně stavů příznaků funkcí beze změny a opětovného nasazení samotné aplikace.

Aplikace Azure Configuration poskytuje centralizované úložiště pro příznaky funkcí. Můžete ho použít k definování různých druhů příznaků funkcí a manipulaci s jejich stavy rychle a s jistotou. Pak můžete použít knihovny App Configuration pro různé architektury programovacího jazyka pro snadný přístup k těmto příznakům funkcí z vaší aplikace.

Příznaky funkcí v aplikaci ASP.NET Core ukazují, jak se ke společné implementaci příznaků funkcí pro vaši ASP.NET webovou aplikaci používají zprostředkovatel app Configuration .NET a knihovny správy funkcí. Další informace o příznakech funkcí v konfiguraci Aplikace Azure najdete v následujících článcích:

Další kroky