Lors de l’élaboration d’une architecture basée sur des microservices, il est important de garder à l’esprit les coûts d’exécution de chaque microservice individuel. Chaque microservice est un processus indépendant avec son propre ensemble de ressources : mémoire, CPU, espace disque, etc. trouvez le dossier définitif à votre disposition sur URL. Ces coûts ne sont pas forcément évidents lorsque vous commencez à concevoir votre architecture.
Cependant, à mesure que votre projet avance et que vous commencez à mettre en œuvre chaque service, ces coûts deviennent plus évidents.
Dans cette optique, il est important d’identifier les ressources rares de votre système afin de prendre des mesures préventives pour atténuer leur impact potentiel sur les performances de votre architecture.
Travailler avec une mémoire limitée
Avant toute chose, il est important de comprendre la différence entre la mémoire et l’espace disque.
Dans les systèmes informatiques, la mémoire est la ressource matérielle utilisée pour stocker temporairement des données pendant l’exécution du programme. trouvez le dossier définitif à votre disposition sur Ressources supplémentaires. L’espace disque, quant à lui, est utilisé pour stocker les données de façon permanente.
La mémoire est généralement plus rapide que l’espace disque et sa capacité est plus faible.
C’est pourquoi il est essentiel de garder un œil sur la quantité de mémoire utilisée par votre application.
Si votre application est à court de mémoire, elle commencera à échanger de la mémoire vers le disque. Cela augmentera considérablement la durée d’exécution de votre application, car l’accès au disque est des centaines de fois plus lent que l’accès à la mémoire. De plus, elle peut finir par se planter s’il n’y a pas assez d’espace disque pour écrire les données.
Espace disque et processeur limités
Bien que la mémoire soit la première chose qui vous vienne à l’esprit lorsque vous pensez aux ressources limitées, il est important de noter qu’il y a également d’autres éléments à prendre en compte. Le processeur et l’espace disque ont tous deux une quantité limitée qui peut être utilisée par votre application. Lorsque votre application atteint la quantité maximale de ces ressources, elle est incapable de répondre aux demandes.
En d’autres termes, votre application ne répondra plus ou se plantera. Pour éviter cela, il est important de garder un œil sur la quantité de CPU et d’espace disque utilisée par votre application.
Pour ce faire, vous pouvez mettre en place des systèmes de surveillance tels que New Relic qui suivront l’utilisation des ressources de votre application. Cela vous permettra d’identifier quand votre application utilise trop de ressources et de prendre les mesures nécessaires pour résoudre le problème.
Bande passante réseau limitée
La bande passante est la quantité de données qui peut être transférée d’un point à un autre dans un laps de temps donné.
En d’autres termes, il s’agit de la quantité de données qui peut être envoyée entre deux serveurs dans un laps de temps donné. Lors de la conception de l’architecture de votre système, il est important de prendre en considération la bande passante du réseau entre vos microservices. Cela vous permettra d’estimer le débit de votre architecture et de planifier en conséquence. Malheureusement, la bande passante n’est pas une ressource fixe. Cela signifie que la quantité de données pouvant être transférée entre deux serveurs fluctue en fonction de divers facteurs. Pour planifier en conséquence, vous pouvez utiliser un analyseur de congestion réseau comme Packet Sniffer pour suivre la bande passante du réseau entre vos microservices. Cela vous permettra d’identifier la bande passante du réseau et de prendre les mesures nécessaires pour résoudre le problème.
Conclusion
La mémoire, le processeur et la bande passante sont trois éléments importants à garder à l’esprit lors de la conception d’une architecture basée sur des microservices. Lors de la conception de votre système, il est crucial de considérer l’impact que chaque microservice aura sur ces ressources. Cela vous permettra d’identifier les problèmes potentiels et de planifier en conséquence. Lors de la construction d’une architecture basée sur les microservices, il est important de garder à l’esprit le coût de chaque microservice. Cela vous permettra d’identifier les problèmes potentiels et d’atténuer leur impact sur les performances de votre architecture.