Skip to content

Microservices-based application for managing patient records, built with ASP.NET Core, React, and an API Gateway using Ocelot. Includes a backend for CRUD operations, a gateway for routing, and a React frontend.

Notifications You must be signed in to change notification settings

ElodieCara/MicroservicesSolution

Repository files navigation

Recommandations d’amélioration « Green » pour MicroservicesSolution

Introduction

Le projet MicroservicesSolution utilise une architecture de microservices pour gérer les patients, les notes médicales et évaluer les risques de diabète. Ce fichier propose des recommandations Green Code pour réduire l'impact environnemental du projet tout en améliorant ses performances.


Enjeux du Green Code

L’objectif du Green Code est de réduire l’empreinte écologique des logiciels en minimisant leur consommation de ressources (CPU, mémoire, réseau, stockage). Cela permet :

  1. De diminuer la consommation énergétique pendant l’exécution.
  2. D’optimiser les performances globales.
  3. De s’aligner avec les objectifs de durabilité et de responsabilité écologique.

Identification des zones critiques dans le code

Comment repérer les parties du code consommatrices de ressources ?

  1. Analyse des performances :

    • Identifier les appels redondants à la base de données ou aux API.
    • Surveiller les parties du code causant une latence élevée ou utilisant des boucles coûteuses.
  2. Surveillance de la mémoire :

    • Détecter les fuites de mémoire ou les objets inutilisés avec des outils comme dotMemory ou Visual Studio Profiler.
    • Minimiser les allocations excessives de collections ou d’objets.
  3. Mesure de l’impact énergétique :

    • Utiliser des outils comme GreenSpector ou EcoIndex pour évaluer la consommation énergétique.

Recommandations pour un code plus vert

1. Réduction des consommations inutiles

  • Journaux (logs) :

    • Réduire la journalisation en production aux erreurs critiques.
    • Supprimer les journaux détaillés inutiles.
  • API :

    • Implémenter la mise en cache pour les données fréquemment accédées.
    • Ajouter la pagination pour éviter les charges mémoire excessives lors de requêtes volumineuses.

2. Gestion efficace des ressources

  • Mémoire :

    • Utiliser using pour libérer automatiquement les ressources dans .NET.
    • Réutiliser les objets plutôt que d’en allouer de nouveaux.
  • Compression des données :

    • Activer la compression Gzip pour réduire la taille des réponses JSON.

3. Efficience énergétique

  • Optimisation des bases de données :

    • Ajouter des index sur les colonnes fréquemment interrogées.
    • Activer le pool de connexions pour réduire les coûts des requêtes.
  • Optimisation du front-end :

    • Minifier les fichiers CSS et JavaScript.
    • Utiliser le chargement différé (lazy loading) pour les images et scripts.

Conclusion

Ces recommandations permettent de réduire l’empreinte environnementale tout en améliorant la performance globale de MicroservicesSolution. Elles servent également de base pour intégrer des principes Green IT dans le projet.


About

Microservices-based application for managing patient records, built with ASP.NET Core, React, and an API Gateway using Ocelot. Includes a backend for CRUD operations, a gateway for routing, and a React frontend.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published