Le Feature Toggle (capacité à activer ou désactiver des fonctionnalités à chaud) peut être très utile dans les architecture distribuées type Microservice. Déclarer un flag une fois, (ex:Monitoring) et tous les services peuvent y accéder. (fonctionnalités transverses).
FF4j est l'implémentation de référence de ce pattern pour la plateforme Java. Dans cette session je vous montre comme il est rapide de le mettre en place dans une application Spring-Boot. Vous avez ainsi directement au feature toggle au travers de la console Web mais également une gestion des propriétés et un monitoring métier.
Features Continuous Delivery MicroServices
5. @clunven | @voxxed_lu | #voxxed_lu
Distributed System Deployments
Load-Balancer
Version N Version N Version N
1 2 3
Load-Balancer
Version N+1 Version ? Version N
1 2 3
6. @clunven | @voxxed_lu | #voxxed_lu
Distributed System Deployments
Load-Balancer
Version N Version N Version N
1 2 3
Load-Balancer
Version N+1
1 2 3
Version N+1 Version N+1
Toggle
ON
Toggle
Off
7. @clunven | @voxxed_lu | #voxxed_lu
Feature Toggle^2
Enable ?
« yes »
Feature
OFF ON
« no »
users ACL
Permissions
unauthorized « granted »
14. @clunven | @voxxed_lu | #voxxed_lu
Feature Toggle
App A
F. Toggle
App B
F. Toggle
Toggle Toggle
F. Toggle
Service
Admin
F. Toggle
Console
App A
F. Toggle
Client
App B
F. Toggle
Client
App C
F. Toggle
Client