En fait, un meilleur terme peut exister pour ce dont j'ai besoin, mais je ne suis pas au courant et je serais reconnaissant à quiconque en suggère un et/ou édite le sujet de la question de manière appropriée.Une sorte de test A/B lorsque B est un repli
Envisagez d'utiliser le service Web API S
qui est déployé sur le serveur de production. Traitons cela comme une source de vérité. Puis, par exemple, j'ai besoin de mettre à jour certaines dépendances externes ou de modifier le code de l'infrastructure sans affecter directement la logique métier principale ni le contrat public du service.
Ainsi, je reçois S_updated
qui doit passer la phase de mise en scène et ensuite seulement être déployé en production. En raison du genre de changements apportés à la base de code, je m'attendrais à ce que ce service fonctionne comme la version précédente ou ne fonctionne pas du tout en raison de problèmes d'intégration. Il y a toujours un risque de changer le comportement du système, mais je peux vivre avec et je m'attends à ce que les tests unitaires soient un bon filet de sécurité. Ceci est également prouvé par la pratique. Ce que je veux réellement, c'est pouvoir déployer S_updated
en production et avoir un service de proxy envoyant tout ou partie (dépend de la configuration) des demandes échouées à l'ancien service S
.
Existe-t-il des solutions génériques configurables pour une telle fonctionnalité?
Vous devez effectuer une recherche sur le déploiement des canaris et le déploiement bleu/vert. Ce sont les modèles que vous décrivez. – Paolo