Avantages et inconvénients des systèmes distribués

Vue de dessus à travers le verre de l'ingénieur informatique travaillant avec un ordinateur portable dans un centre de données rempli de serveurs rack actifs.

Crédit d'image : gorodenkoff/iStock/GettyImages

Les systèmes distribués sont des systèmes informatiques où plusieurs systèmes informatiques fonctionnent ensemble efficacement comme une seule unité. Des exemples de systèmes distribués incluent les réseaux de distribution de contenu utilisés pour diffuser des sites Web et des vidéos en ligne, supercalculateurs construits à partir de plusieurs processeurs mathématiques puissants et de bases de données distribuées utilisées dans de nombreux systèmes. Les systèmes distribués peuvent être plus résistants, plus puissants et plus rapides que les systèmes à ordinateur unique, mais ils peuvent également nécessiter plus d'entretien et une réflexion approfondie sur l'organisation et les problèmes qui peuvent aller tort.

Avantages d'un système distribué

L'utilisation d'un système distribué présente un certain nombre d'avantages potentiels. L'un des plus faciles à comprendre est la redondance et la résilience. Si une entreprise sert son site Web à partir d'un ensemble distribué de serveurs, plutôt que d'un seul serveur, elle peut rester active même si un serveur tombe en panne physiquement. Si les données sont réparties entre plusieurs serveurs ou disques, ce qui est courant dans les systèmes distribués modernes, il peut ne pas y avoir de perte de données même si un périphérique de stockage cesse de fonctionner.

Vidéo du jour

Vitesse et distribution de contenu

Les systèmes distribués peuvent également être plus rapides que les systèmes à ordinateur unique. L'un des avantages d'une base de données distribuée est que les requêtes peuvent être acheminées vers un serveur avec un informations d'un utilisateur particulier, plutôt que toutes les demandes devant aller à une seule machine qui peut être surchargé.

Les demandes peuvent également être acheminées vers des serveurs physiquement proches ou sur une connexion réseau rapide à qui le souhaite les données, ce qui peut signifier moins de temps et d'autres ressources allouées au traitement du trafic réseau et goulots d'étranglement. C'est un phénomène courant dans les réseaux de distribution de contenu utilisés pour les médias en ligne.

Mise à l'échelle et parallélisme

Une fois que les systèmes distribués sont configurés pour distribuer les données entre les serveurs impliqués, ils peuvent également être facilement évolutifs. S'ils sont bien conçus, cela peut être aussi simple que d'ajouter du nouveau matériel et de dire au réseau de l'ajouter au système distribué.

Les systèmes distribués peuvent également être conçus pour le parallélisme. Ceci est courant dans les opérations mathématiques pour des choses comme la modélisation météorologique et le calcul scientifique, où plusieurs puissants les processeurs peuvent diviser des parties indépendantes de simulations complexes et obtenir la réponse plus rapidement qu'ils ne le feraient dans séries.

Les défis de l'informatique distribuée

L'un des grands défis de l'informatique distribuée est qu'il peut être difficile pour les programmeurs de raisonner. Il peut y avoir des défis dans la façon de distribuer les données pour s'assurer que les exigences de résilience sont satisfaites dans diverses conditions inattendues.

Si les appareils doivent se synchroniser, il peut y avoir des bogues difficiles à repérer qui les obligent à s'attendre les uns les autres transmettre des données ou tenter accidentellement de lire ou d'écrire la même donnée en même temps, provoquant les erreurs.

La sécurité et la confidentialité peuvent également devenir un problème avec les systèmes distribués, car les données des personnes sont stockées sur plusieurs ordinateurs, parfois dans plusieurs emplacements physiques. Les systèmes distribués peuvent également être excessifs pour certaines tâches, en utilisant plus de ressources physiques et de temps d'ingénierie que nécessaire.