Comprendre les modèles de déploiement modernes
Les utilisateurs finaux utilisent toujours votre application différemment. Des événements inattendus se produisent dans un centre de données, plusieurs événements de plusieurs utilisateurs se produisent, déclenchant du code qui n’a pas été testé de cette façon.
Pour passer le cap, nous devons accepter que certaines fonctionnalités ne peuvent être testées qu’en production.
Cela fait un peu peur de tester en production, mais cela ne devrait pas être le cas.
Lorsque nous avons parlé de la séparation de nos versions fonctionnelles et techniques, nous avons déjà vu qu’il est possible de déployer des fonctionnalités sans les exposer à tous les utilisateurs.
Lorsque nous prenons ce concept de bascule de fonctionnalités et que nous l’utilisons avec nos modèles de déploiement, nous pouvons tester nos logiciels en production.
Par exemple :
- Déploiements bleus/verts.
- Versions Canary.
- Dark launching.
- Tests A/B.
- Exposition progressive ou déploiement en anneau.
- Bascules de fonctionnalités.
Portez un regard critique sur votre architecture
Votre architecture et l’état actuel de votre logiciel sont-ils prêts pour la livraison continue ?
Les questions que vous voudrez certainement prendre en compte sont les suivantes :
- Votre logiciel est-il généré comme un seul monolithe géant, ou est-il divisé en plusieurs composants ?
- Pouvez-vous livrer des parties de votre application séparément ?
- Pouvez-vous garantir la qualité de votre logiciel quand vous le déployez plusieurs fois par semaine ?
- Comment tester votre logiciel ?
- Exécutez-vous une ou plusieurs versions de votre logiciel ?
- Pouvez-vous exécuter plusieurs versions de votre logiciel côte à côte ?
- Qu’avez-vous besoin d’améliorer pour implémenter la livraison continue ?