• 4 heures
  • Difficile

Ce cours est visible gratuitement en ligne.

course.header.alt.is_video

course.header.alt.is_certifying

J'ai tout compris !

Mis à jour le 16/04/2024

Révisez ce que vous avez appris

Félicitations, vous avez atteint la fin de ce cours ! Vous avez vu six grands modèles d'architecture qui sont tous résumés dans ce tableau :

Modèle d'architecture

Description

Avantages

Inconvénients

Quand l'utiliser

Client-serveur

Une structure d'application distribuée qui répartit les tâches entre les fournisseurs d'un service, appelés serveurs, et les demandeurs du service, appelés clients. Les clients et les serveurs communiquent souvent sur un réseau en utilisant des matériels différents.

Encapsulation du matériel, des logiciels et des fonctionnalités. 

Combinaison fluide de clients et de serveurs sur différentes plateformes.

Si tous les clients demandent simultanément des données au serveur, celui-ci peut être surchargé. 

Si le serveur échoue pour une raison quelconque, aucune demande client ne peut être satisfaite.

Lorsque les utilisateurs ont différents appareils.

Lorsque vous avez besoin d'encapsuler les fonctionnalités du système.

Pilotée par les événements

Les événements sont produits, transportés et interprétés dans un bus d'événements.

Les clients s'abonnent à un groupe d'événements (canal) et agissent en fonction des messages reçus.

Capable de gérer des millions d'événements en même temps.

Capable de faire communiquer différentes technologies et plateformes avec le même bus d'événement.

Si le bus d'événements tombe en panne, le système ne fonctionne plus.

Le bus d'événements peut être surchargé et subir des problèmes de performance.

Lorsque vous avez plusieurs événements en même temps.

Lorsque vous devez agir sur un événement en temps réel (exécution synchronisée).

Lorsque vous avez des plateformes différentes.

Orientée services

Un modèle d'architecture basé sur les services qui permet à un système externe d'utiliser une bibliothèque de fonctionnalités sans accéder aux systèmes internes.

Communication simple : fonctionne à 100 % sur Internet.

Normes de sécurité strictes : aucun client ne peut accéder aux systèmes internes.

Les clients ont besoin d'Internet pour utiliser la bibliothèque.

Le contrôleur de services web peut être surchargé et subir des problèmes de performance. Pensez-y : « Combien de demandes le service web de suivi de FedEx reçoit-il par seconde ? »

Lorsque vous avez de nombreux clients pour un service web.

Lorsque vous devez communiquer à distance avec ces clients.

Modulaire

Des parties supplémentaires du logiciel sont développées pour ajouter une fonctionnalité spécifique non prévue dans le système.

Pas de réécriture du système.

Augmentation de la fonctionnalité sans limite.

Les modules se font fréquemment planter les uns les autres et produisent des dysfonctionnements dans le système principal.

Lorsque vous avez une fonctionnalité spéciale à traiter et que vous ne voulez pas réécrire le système original.

En couches

Le logiciel fonctionne en couches qui permettent à chaque composant d'être indépendant du reste.

Encapsulation du matériel, des logiciels et des fonctionnalités. 

Si une couche est modifiée, les autres couches restent les mêmes.

Pour les petites applications, de nombreuses couches créent un problème de performance et sont très difficiles à maintenir.

Uniquement pour les grandes applications.

Centrée sur les données

Une structure d'application qui utilise les données au lieu du code pour prendre des décisions de comportement.

Il n'est pas nécessaire d'analyser tous les cas dans le code.

Les catégories peuvent s'étendre indéfiniment.

Des modifications peuvent être apportées sans changer le code.

Peut devenir compliqué à comprendre et à gérer lorsqu'il y a de nombreuses catégories.

Lorsqu’il y a de nombreuses catégories différentes et que vous devez agir différemment pour chacune d'entre elles.

Vous possédez maintenant toutes les connaissances dont vous avez besoin :

Il ne vous reste plus qu'à mettre en pratique vos nouvelles connaissances, d'abord en vous mettant au défi avec le quiz final, puis en concevant des architectures pour vos prochains projets !

Exemple de certificat de réussite
Exemple de certificat de réussite