Faites les choses simplement
- 15 minutes
|
|
|---|
C’est souvent ce que vous retirez plutôt que ce que vous ajoutez qui rend les solutions plus fiables. Garder les choses simples permet d’éviter les problèmes de contrôle, de réduire les inefficacités et d’empêcher les mauvaises configurations ou les problèmes inattendus. Mais la surimplification peut introduire des points de défaillance uniques. C’est tout ce qui concerne la recherche d’un équilibre.
Exemple de scénario
Contoso Travel achète et intègre une petite entreprise de démarrage qui a une application de voyage web populaire. L’application est populaire, car elle obtient de grandes transactions avec les hôtels et les compagnies aériennes et utilise les médias sociaux pour le marketing ciblé.
L’application de démarrage a été créée à l’aide de Node.js et s’exécute sur des machines virtuelles hébergées à la fois dans leur centre de données et sur Amazon Web Services (AWS).
Simplifier les composants de charge de travail
Ajoutez uniquement des composants à votre configuration s’ils vous aident à atteindre vos objectifs métier. Concentrez-vous sur les éléments essentiels.
La conception pour les exigences métier peut entraîner une solution simple qui est facile à exécuter et à gérer. Évitez d’avoir trop de parties critiques, car chacun d’eux peut être un point d’échec potentiel.
Défi de Contoso
- Un composant de la nouvelle application permet aux utilisateurs d’envoyer des commentaires sur le site web une fois qu’ils effectuent une réservation. La plupart des utilisateurs ignorent cette fonctionnalité. Au lieu de cela, ils préfèrent utiliser les médias sociaux de l’entreprise pour les commentaires, qui est plus souvent utilisé pour le marketing et l’interaction utilisateur.
Application de l’approche et des résultats
Dans le cadre de la version initiale de la version de Contoso Travel de l’application, l’équipe supprime la fonctionnalité de commentaires du site web.
Une base de code plus petite signifie des coûts de maintenance et d’exploitation inférieurs. Et cela n’affecte pas les exigences métier.
Normaliser votre cycle de vie de développement logiciel
Définissez des normes claires pour le codage, le déploiement et les processus, et documentez-les. Utilisez des vérifications automatisées pour appliquer ces normes.
Les normes aident à maintenir la cohérence des choses et à réduire les erreurs humaines. L’utilisation de conventions d’affectation de noms standard et de guides de style de code peut maintenir la qualité et faciliter l’identification des ressources pour la résolution des problèmes.
Défi de Contoso
L’équipe de développement du démarrage ne dispose pas de normes définies. Ils utilisent des bibliothèques qui se chevauchent, n’appliquent pas de styles de codage et leurs pipelines de mise en production n’ont pas de portes de test automatisées formelles.
L’équipe Contoso trouve la nouvelle base de code difficile à gérer en raison de styles incohérents et d’utilisation de la bibliothèque.
Il y a beaucoup de problèmes après les mises à jour majeures en production. Parfois, l’équipe doit restaurer les mises à jour ou appliquer des correctifs à chaud pendant le déploiement. En raison de ces problèmes fréquents, toute l’équipe doit aider chaque fois qu’elle publie des mises à jour en production. Pour aggraver les choses, ces problèmes font mal à la réputation de Contoso et donnent aux utilisateurs une mauvaise expérience.
Application de l’approche et des résultats
L’équipe qui prend en charge la nouvelle application fonctionne pour appliquer des styles de codage, normaliser des bibliothèques et des modèles de conception, et formaliser les portes de mise en production sur les tests automatisés.
Ils documentent tous les nouveaux outils, modèles de conception et styles afin qu’il soit plus facile de maintenir la charge de travail et d’identifier les écarts lors des révisions de code.
Réduire les opérations et la charge de développement
Utilisez des fonctionnalités fournies par la plateforme et des ressources prédéfinies pour répondre efficacement aux objectifs métier.
Cette approche permet de gagner du temps de développement et s’appuie sur des pratiques éprouvées utilisées dans des projets similaires.
Défi de Contoso
Pour la version initiale de l’application Contoso Travel, l’équipe déplace la solution Node.js des machines virtuelles vers Azure App Service pour tirer parti de ses fonctionnalités de fiabilité intégrées.
La version de la machine virtuelle a beaucoup de code personnalisé pour l’instrumentation.
Application de l’approche et des résultats
Pendant la migration initiale vers App Service, l’équipe supprime tout le code d’instrumentation personnalisé à l’aide de l’autoinstrumentation Application Insights.
Ils tirent également parti d’autres fonctions App Service telles que la mise à l’échelle automatique, l’intégration d’Azure Key Vault et la redondance zonale.