Canary Release vs Feature Flags
Jest to strategia wdrożenia używana w celu minimalizacji ryzyka.
| Canary Release | Feature Flags | |
|---|---|---|
| Definition | Canary Release to strategia wdrożenia używana w rozwoju oprogramowania w celu zmniejszenia ryzyka wprowadzenia nowej wersji poprzez początkowe udostępnienie jej małej grupie użytkowników. | Feature Flags, znane również jako Feature Toggles, to technika, która pozwala programistom na włączanie lub wyłączanie określonych funkcjonalności w aplikacji oprogramowania bez zmiany kodu źródłowego. |
| Categories | DevOps, deployment, release, risks | A/B Testing, CD, CI, development |
Co to jest wersja Canary Release?
Jest to strategia wdrożenia używana w celu minimalizacji ryzyka.
Definicja
Canary Release to strategia wdrożenia używana w rozwoju oprogramowania w celu zmniejszenia ryzyka wprowadzenia nowej wersji poprzez początkowe udostępnienie jej małej grupie użytkowników.
Pochodzenie
Nazwa pochodzi od górników, którzy zabierali ze sobą kanarka w klatce do kopalni węgla. Jeśli w kopalni doszłoby do wycieku toksycznych gazów, kanarek umarłby przed górnikami, sygnalizując niebezpieczeństwo.
Monitorowanie
System jest uważnie monitorowany pod kątem problemów, a jeśli nowa wersja sprawuje się dobrze, jest stopniowo udostępniana większej liczbie użytkowników.
Cofnięcie
Jeśli zostaną wykryte problemy, wdrożenie można cofnąć, a starą wersję przywrócić dla wszystkich użytkowników.
Selekcja
Różne strategie są stosowane do wyboru użytkowników, którzy będą narażeni na nową wersję, takie jak losowe próbkowanie lub selekcja na podstawie demografii.
Co to jest Feature Flag?
Jest to technika, która umożliwia włączanie lub wyłączanie funkcjonalności.
Definicja
Feature Flags, znane również jako Feature Toggles, to technika, która pozwala programistom na włączanie lub wyłączanie określonych funkcjonalności w aplikacji oprogramowania bez zmiany kodu źródłowego.
Implementacja
Mogą być implementowane za pomocą wartości logicznych w plikach konfiguracyjnych, które są warunkowo sprawdzane, aby określić, czy funkcjonalność powinna być widoczna i aktywna, czy nie.
Przypadki użycia
Są używane w podejściach Continuous Deployment (CD), Canary Releases, testach A/B i do zarządzania widocznością funkcjonalności dla różnych segmentów użytkowników.
Korzyści
Feature Flags pozwalają na bezpieczniejszy i bardziej efektywny rozwój, umożliwiając zespołom wdrażanie i testowanie nowych funkcji bez wpływu na całą bazę użytkowników.
Wzrost
Użycie Feature Flags zyskało na popularności wraz z rozwojem praktyk Agile, DevOps i ciągłego dostarczania w rozwoju oprogramowania.
Konfiguracja
Mogą być definiowane za pomocą usługi takiej jak Bullet Train lub Launch Darkly, tworzenia własnej usługi zaplecza lub używania lokalnych plików w aplikacji.