Coopération entre les applications (Middleware) - Cours de Sciences de gestion et numérique Terminale pro avec Maxicours

01 49 08 38 00 - appel gratuit de 9h à 18h (hors week-end)

Coopération entre les applications (Middleware)

Objectif :
Découvrir les architectures client/serveur et leurs rôles.
1. Présentation : les applications informatiques dans l'environnement réseau
Rappel : les applications informatiques ont vocation à répondre aux besoins des utilisateurs dans leur travail au sein de l'organisation. Pour des raisons d'adaptation rapide aux évolutions du système d'information, les applications informatiques sont structurées en 3 niveaux : présentation, traitement, données.

Les systèmes informatiques sont de plus en plus souvent structurés autour du réseau local de l'entreprise interconnectée aux réseaux étendus mondiaux. Les applications informatiques doivent donc permettre la communication au travers des réseaux en utilisant les architectures applicatives « client/serveur ».
2. Client et serveur
a. Comprendre les notions client et serveur
La notion client/serveur est relativement simple ; il suffit de s'imaginer le client d'un café qui commande une boisson au serveur : le client sollicite un service et le serveur lui rend ce service.

L'objectif des architectures client/serveur est de permettre l'accès réparti de l'usage des services auprès des différents utilisateurs, tout en gérant de façon centralisée les ressources tant applicatives (traitements) que de gestion des données.
Les architectures client/serveur vont permettre une évolution plus rapide de l'organisation des systèmes d'information étendue en facilitant la maintenance par une gestion indépendante de chacun des niveaux qui la composent ; la réelle difficulté restant l'interopérabilité des systèmes et des technologies mises en œuvre.
b. Les clients
Le client est souvent considéré comme étant le poste de travail (ordinateur) de l'utilisateur : on parle dans ce cas de « poste client ».
Toutefois d'un point de vue applicatif le client ou logiciel client a pour rôle de permettre la communication avec le serveur ou logiciel serveur pour lequel il représente l'interface utilisateur.
L'utilisateur émet des requêtes d'interrogation vers le serveur et reçoit les résultats du serveur au travers du client.
Exemple : le navigateur Web émet une requête http d’interrogation d'un service Web qui lui renvoie en résultat une page html qui sera visualisée par le navigateur. Le navigateur Web est le logiciel client et le service Web est le logiciel serveur.

Il existe 3 catégories de logiciel client :
le client léger ne gère que le niveau de présentation,
Exemple : un simple navigateur Web émettant des requêtes http vers des serveurs de traitement et des serveurs de données Internet (ou intranet).

le client enrichi gère le niveau présentation et certains traitements locaux,
Exemple : un navigateur Web associé à des traitements locaux JavaScript ou VBScript ou encore l'utilisation de Plug-In (extension logicielle locale).

le client lourd gère les niveaux de présentation et de traitement,
Exemple : tous les logiciels installés sur les postes client accédant à un serveur de données.
c. Les serveurs
Au même titre que le client le serveur est souvent associé à la machine délivrant un service (ou des services).
Toutefois, le serveur applicatif correspond à un programme (on parle de processus) délivrant un service. Le serveur est en attente de sollicitations de la part des logiciels clients du service qu'il propose. Le serveur traite la requête d'interrogation émise par le client et lui renvoie le résultat.

Il existe de très nombreuses catégories de serveur : authentification (ou d'accès), impression, fichier, application, donnée, Internet (WWW, FTP, messagerie électronique…), DNS, DHCP, mandataire (proxy)… en fonction des besoins de services de l'organisation.
d. Le logiciel médiateur (Middleware)
L'architecture client/serveur doit permettre à des applications clientes et serveurs de pouvoir communiquer en échangeant des informations dans des environnements systèmes et technologiques différents.

Les logiciels médiateurs (middleware) ont pour rôle de gérer de façon cohérente les échanges entre les logiciels, ils servent donc d'interface permettant :
l'interconnexion (entre le client et le serveur du service),
l'envoi et l'exécution des requêtes d'interrogation par le service/serveur concerné,
• et en assurant la forme et le retour du résultat au client.
3. Les architectures « client/serveur »
a. Architecture 2 tier ou 2 niveaux
Le poste client (ordinateur) héberge le niveau présentation et traitement, alors que le serveur héberge le niveau donné.

Illustration :  avec une application Access exploitant des données d’une base centralisé SQLServeur

Il existe toutefois d'autres organisations reposant sur l'architecture 2 tier ou 2 niveaux principalement depuis l'arrivée des technologies Internet.
b. Architecture 3 tier ou 3 niveaux
L'architecture 3 tier ou 3 niveaux sépare distinctement les 3 niveaux d'une application (présentation, traitement, donnée) que l'on retrouvera généralement sur 3 machines distinctes.

Illustration : un site Internet composé d'un serveur d'application qui héberge le serveur Internet Apache capable d'exploiter le langage de programmation Web PHP et d’un serveur de données qui héberge le système de gestion de bases de données MySQL ainsi la base de données et enfin le ou les postes clients qui exploitent le site Web au travers un navigateur Web.

c. Architecture n tier ou multi-niveau
L'architecture n tier multi niveau correspond à une généralisation de l'architecture 3 tier avec une démultiplication des serveurs gérant les traitements et les serveurs gérant les données.

Illustration : Goggle est un exemple caractéristique qui présente comme client tous les navigateurs Web se connectant à Internet, comme serveurs de traitement un ensemble de serveurs géographiques (www.google.fr pour la France, www.google.de pour l'Allemagne…) et un grand nombre de serveurs de données répliquées (copie des bases de données) ou spécialisées (bases de données correspondant à un domaine spécifique d'interrogation Web). Cette organisation permet aux multiples utilisateurs de pouvoir accéder au service de moteur de recherche de google sans que le système ne s'écroule face aux gigantesques nombres d'interrogations à travers le monde.
L'essentiel
Les applications informatiques doivent pouvoir fonctionner dans un environnement réseau ; l'organisation de celles-ci en 3 niveaux : présentation, traitement et donnée permet de répartir dans un environnement client/serveur les tâches de chaque niveau.

En fonction des besoins applicatifs de l'organisation on retrouvera des architectures applicatives client/serveur à 2 niveaux (2 tier), 3 niveaux (3-tier) ou de multiples niveaux (n tier).

Comment as-tu trouvé ce cours ?

Évalue ce cours !

 

Découvrez
Maxicours

Des profs en ligne

Géographie

Des profs en ligne

  • 6j/7 de 17h à 20h
  • Par chat, audio, vidéo
  • Sur les 10 matières principales

Des ressources riches

  • Fiches, vidéos de cours
  • Exercices & corrigés
  • Modules de révisions Bac et Brevet

Des outils ludiques

  • Coach virtuel
  • Quiz interactifs
  • Planning de révision

Des tableaux de bord

  • Suivi de la progression
  • Score d’assiduité
  • Une interface Parents