Das Buchungsportal der Nordlicht Reisen GmbH bekommt eine neue Funktion, die Sitzplatzwahl bei Busreisen. Das Team will den Code schon in der nächsten Auslieferung in der Produktion haben, die Funktion aber erst zeigen, wenn die Fachabteilung bereit ist: zuerst für die Mitarbeitenden, dann für zehn Prozent der Kunden, dann für alle. Zeigt sich ein Fehler, soll die Funktion in Sekunden verschwinden, ohne dass jemand ausliefert. Das ist die Fähigkeit dieser Lektion: Feature Flags mit dem Feature Manager von Azure App Configuration.
Vorwissen: Warum die Freigabe von der Bereitstellung getrennt sein kann, sehen Sie in Lektion 4.8 (schrittweises Ausrollen) und 4.9 (Feature Flags als Leitplanke der Resilienz). Die Anmeldung ohne Geheimnis mit einer verwalteten Identität lehrt K3, Lektion 3.3.1, Key Vault K3, Lektion 3.3.2. Wie die Dienste von Azure bepreist werden und wie man Kosten festhält, steht in K3, Lektion 3.1.2. Diese Lektion zeigt das Feature-Flag-Werkzeug im Einzelnen und fragt, wie es in die Kette der Auslieferung passt.
Nicht gegen Azure ausgeführt; aus der Referenz von Microsoft: Alle Befehle, Konfigurationen und Menüpfade dieser Lektion stammen aus der Dokumentation oder sind aus ihr abgeleitet; sie sind in diesem Kurs nicht ausgeführt worden.
Was ein Feature Flag ist
Feature-Verwaltung (feature management) ist laut Microsoft eine Entwicklungspraxis, die die Freigabe eines Features von der Bereitstellung des Codes entkoppelt und die Verfügbarkeit auf Abruf ändert. Technik dafür ist das Feature Flag: Es steuert den Lebenslauf einer Funktion dynamisch, schaltet sie ein oder aus, richtet sie an bestimmte Nutzer oder rollt sie schrittweise aus, ohne die Anwendung neu bereitzustellen. Microsoft nennt als Nutzen: sichere, gezielte Auslieferungen, schnellere Experimente und weniger Risiko.
Das passt zu dem, was Sie über sichere Bereitstellungen gelernt haben: Feature Flags nennt Microsoft als Mittel, Funktionen bereitzustellen, aber nicht sofort zu zeigen, sie nach Umgebung, Stufe oder Bereitstellung zu aktivieren und sie nur für Nutzer sichtbar zu machen, die sich ausdrücklich anmelden (Lektion 4.8). Ein Zusatz aus der Empfehlung zur sicheren Bereitstellung: Auch das Ändern eines Feature Flags ist eine Änderung an der Produktion, mit Risiko. Es verdient dieselbe Sorgfalt wie jede Auslieferung.
Die drei Einsatzarten
Der Feature Manager im Portal fragt beim Anlegen, wofür Sie das Flag brauchen:
| Art | Zweck | Mittel |
|---|---|---|
| Switch | einfacher, sofortiger Schalter für alle Nutzer; kurzlebige Betriebsschalter | Kill Switch: eine fehlerhafte Funktion oder Abhängigkeit in Sekunden abschalten; Wartungsmodus an- und ausschalten |
| Rollout | eine Funktion nach und nach einem Prozentsatz oder bestimmten Nutzern und Gruppen zeigen; Canary oder gestufte Auslieferung | Prozentsatz, Zielgruppen, Zeitplan, eigene Bedingungen |
| Experiment | Fassungen (Varianten) vergleichen und messen, welche besser abschneidet; A/B-Test | Varianten, Verteilung des Verkehrs, Überschreibungen |
Ein Beispiel von Microsoft für Rollout: Ein Team startet bei 5 Prozent, nimmt über Gruppen die internen Tester auf 100 Prozent, schließt Altkonten aus und erhöht die Zahl über Tage auf 25, 50 und 100 Prozent, während es Fehlerkennzahlen beobachtet. Das ist Lektion 4.8 mit einer Konfigurationsänderung statt einer Auslieferung.