Zouhair ELHADARI Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application...

40

Click here to load reader

Transcript of Zouhair ELHADARI Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application...

Page 1: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

Zouhair ELHADARIwww.hadari.jimdo.com

Centre de BTS Dakhla

2ème année BTS DSI

Développement d’application client/serveur

Page 2: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

2

Chapitre 1Architecture client-serveur

Page 3: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

3

Partie 1:Rappel (TCP/IP)

2ème année BTS DSI Prof:EL HADARI zouhair

Page 4: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

4

Petit rappel du modèle TCP/IP

Le model OSI définit sept couche, le TCP/IP ne comporte que quatre couches, mais en cohérence avec le model OSI.

Page 5: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

5

Les principaux protocoles rencontrés sur un réseau TCP/IP

Page 6: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

6

Les deux modes de transfert

Il existe deux modes de transfert : Le mode connecté (TCP) Le mode non connecté (UDP)

Le mode connecté (TCP) :Dans ce mode, il se met en place un processus de "handshake" (poignée de main) entre le client et le

serveur.

Le mode non connecté (UDP) :C'est un mode simple, de type "on envoie les données et on espère qu'elles arriveront". Il n'y a pas de "connexion", au sens où on l'a vu pour le mode connecté.

Page 7: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

7

Les protocoles d'application utilisant TCP ou UDP

FTP

HTTP

IMAP

POP

SMTP

NNTP

TELNET

Page 8: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

8

Partie 2: Présentation du modèle client-serveur

Page 9: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

9

Un peu d'histoire: (1)

Le client serveur est l'état actuel de l'évolution des architectures informatiques :

Avant les Années 80 : Système Centralisé (ordinateur central avec des terminaux passifs de type texte).

Les Années 80 : Développement du transactionnel et apparition des SGBD non-propriétaires (indépendants des constructeurs) - SGBD relationnel + SQL

Page 10: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

10

Un peu d'histoire: (2)

Les Années 90 : Développement des réseaux. L'efficacité et le partage des systèmes d'informations doivent être optimum .

Le client-serveur se situe dans ce besoin de centralisation (information cohérente, non redondante et accessible) et de décentralisation (conserver la puissance et l'interface des micros-ordinateurs)

Page 11: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

11

Le modèle Multi-Utilisateur centralisé

Serveur = Ordinateur central qui effectue tous les traitements

Client = Terminal sans puissance locale de traitement

CLIENTECRAN SERVEUR

INTELLIGENCE

Page 12: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

12

Le modèle réseau local traditionnel

Serveur = Gère le réseau et stocke les bases de données sans les gérées.

Client = Les stations effectuent tous les traitements

CLIENTECRAN SERVEUR

INTELLIGENCE

Page 13: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

13

Le modèle Client-Serveur

Répartition judicieuse de la puissance de traitement entre le serveur et les différentes stations interconnectées.

ECRAN SERVEUR

CLIENT

INTELLIGENCE

INTELLIGENCE

Page 14: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

14

Client/Serveur : définition (1)

Le modèle client-serveur s'articule autour d'un réseau auquel sont connectés deux types d'ordinateurs :

Le serveur et le client. Le client et le serveur communiquent via des

protocoles. Les applications et les données sont réparties

entre le client et le serveur de manière à réduire les coûts.

Le client-serveur représente un dialogue entre deux processus informatiques par l’intermédiaire d’un échange de messages

Page 15: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

15

Page 16: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

16

Client/Serveur : définition (2)

CLIENT: Processus qui demande l'exécution d'une opération par l'envoi d'une demande.

SERVEUR: Processus qui exécute la demande du client et qui transmet la réponse.

REQUÊTE (Request) :Message transmis par le client.

REPONSE (Reply):Message transmis par le serveur.

Page 17: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

17

Client/Serveur : FonctionnementCommunication par messages (plutôt que par

partage de données, mémoire ou fichiers) Requête : paramètres d’appel, spécification du

service requis. Réponse : résultats, indicateur éventuel d’exécution

ou d’erreur Communication synchrone (dans le modèle de

base) : le client est bloqué en attente de la réponse

Page 18: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

18

Client/Serveur :Intérêts

Structuration fonctions bien identifiées séparation interface du service - réalisation client et serveur peuvent être modifiés (remplacés)

indépendamment.

Protection client et serveur s’exécutent dans des domaines de

protection différents.

Gestion des ressources le serveur peut être partagé entre de nombreux

clients en contrepartie, il doit assurer la gestion des

ressources partagées.

Page 19: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

19

Client/Serveur :Exemples (1)

Exemples d’applications

Serveur de fichiers Serveur d’impression Serveur de calcul Serveur d’application (spécifique `a

l’application) Serveur de bases de données Serveur de temps Serveur de noms (annuaire des services) ……

Page 20: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

20

Client/Serveur :Exemples (2)

Page 21: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

21

Les principes généraux du C/S: (1) Service:Le serveur est fournisseur de services. Le client est

consommateur de services.  

Protocole:C'est  toujours  le  client  qui  déclenche  la  demande  de  service.  Le  serveur  attend passivement les requêtes des clients. 

   Partage des ressources: Un serveur traite plusieurs

clients en même temps et contrôle leurs accès aux ressources.  

Localisation: Le logiciel client-serveur masque aux clients la localisation du serveur.

Hétérogénéité : Le logiciel client-serveur est indépendant des

plate-formes matérielles et logicielles. 

Page 22: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

22

Les principes généraux du C/S: (2)

Redimensionnement:Il est possible d'ajouter et de retirer des stations clientes. Il est possible de faire évoluer les serveurs. 

  Intégrité:Les données du  serveur sont  gérées

sur le serveur de façon  centralisée.  Les clients restent individuels et indépendants. 

  Souplesse et adaptabilité:On peut modifier le

module serveur sans toucher au module client. La réciproque est vraie. Si  une station  est  remplacée par un  modèle plus récent,  on  modifie le module client (en améliorant l'interface, par exemple) sans modifier le module serveur.

Page 23: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

23

Découpage des applications C/S:

DONNEES

TRAITEMENT

PRESENTATION

On reconnaît traditionnellement dans une application 3 modules :

Page 24: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

24

Interface

Données

SGBDBases de Données

Langages de programmation / manipulation de données

Stations de travail

Traitements

Les trois dimensions d'une application

Page 25: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

25

Découpage des applications C/S: (2)

Dans le modèle client-serveur on distingue trois couches :

Couche présentation (l’interface) est chargée d’organiser le dialogue entre la machine et l’utilisateur,

Couche applicative (les traitements ) réalisent les tâches pour produire les résultats,

Couche données: la gestion des données.

Page 26: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

26

Les différents modèles  de C/S: (1)

Dans ce cas la présentation des pages affichées par le client est intégralement prise en charge  par le  serveur.  Cette  organisation  présente  l'inconvénient  de  générer un  fort trafic réseau. 

1.Client-serveur de présentation

Page 27: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

27

Les différents modèles  de C/S: (2)

2.Le client-serveur de traitement 

Dans ce cas, le serveur effectue des traitements à la demande du client. Il peut s'agir de traitement particulier sur des données, de vérification de formulaires de saisie, de traitements d'alarmes … Ces traitements peuvent  être  réalisés par des programmes installé  sur des serveurs mais également  intégrés dans des bases de données,   dans ce cas, la partie donnée et traitement sont intégrés. 

Page 28: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

28

Les différents modèles  de C/S: (3)

3.Le client-serveur de donnée. Dans ce  cas,  le  serveur assure  des tâches

de  gestion,  stockage  et  de  traitement  de données.  C'est  le cas le plus connu  de client-serveur est  qui  est  utilisé par tous les grands SGBD :

La base de données avec tous ses outils (maintenance, sauvegarde …) est installée sur un poste serveur. 

  Sur les clients, un logiciel d'accès est installé permettant

d'accéder à la base de données du serveur.   Tous les traitements sur  les données sont  effectués sur

le  serveur qui  renvoie  les informations demandées (souvent à travers une requête SQL) par le client 

Page 29: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

29

Le schéma du Gartner Group: (1)

Page 30: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

30

Le schéma du Gartner Group: (2)

Client/Serveur de présentation– Type 1 : La

présentation distribuée : Représente un système Serveur/terminal classique. Ce dernier présente un écran "calculé" par le serveur.

Page 31: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

31

Le schéma du Gartner Group: (3)

Client/Serveur de présentation

• Type 2 : présentation distante : L'affichage effectué par le client se fait à la suite d'un échange de requêtes avec le serveur, le serveur prend en charge l’exécution de l’applicatif et la gestion des données.

Page 32: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

32

Le schéma du Gartner Group: (4)

Le client-serveur de traitementType 3 : Le client/serveur de traitement :

application répartie

La partie logique de l’application est

découpée et répartie entre le poste client

et le poste serveur.

Le poste client contient la logique

fonctionnelle de base et fait appel au

serveur pour effectuer les traitements en

utilisant des services extérieurs. Elle

envoie pour cela des requêtes ou

demandes au serveur qui va effectuer les

traitements et renvoyer les résultats au

client qui se charge de l’affichage.

Page 33: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

33

Le schéma du Gartner Group: (5)Le client-serveur de donnée.Type 4: gestion de données distantes

La partie cliente assure la gestion de

l’affichage ainsi que l’exécution des

traitements de l’application.

Le serveur héberge et gère les données, le

plus souvent à l’aide d’un système de

gestion de base de données relationnel

(SGBDR).

Dans ce modèle, l’application cliente

provoque le dialogue en envoyant des

requêtes au serveur qui en retour envoie les

données demandées répondant à la

demande.

Le client-serveur de données est le type le

plus utilisé puisque les SGBDR fonctionnent

sous ce modèle.

Page 34: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

34

Le schéma du Gartner Group: (6)

Le client-serveur de

donnée.Type 5: gestion de données

distribuées ou système réparti:

Les données sont distribuées entre

le poste client et le poste serveur.

Dans un tel environnement, les

données réparties doivent être

gérées comme si elles étaient

stockées physiquement en un seul

endroit.

Page 35: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

35

L'architecture client-serveur: (1)

Suivant les contraintes d'utilisation ou contraintes techniques on a des différents types

Architecture 1-tiers Architecture 2-tiers Architecture 3-tiers Architecture n-tiers

Page 36: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

36

L'architecture client-serveur: (2)

Architecture 1 tiersLes 3 couches applicatives s'exécutent sur la même machine On parle d'informatique centralisée :Contexte multi-utilisateurs dans le cadre d'un site central (mainframe)

Page 37: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

37

L'architecture client-serveur: (3)

Architecture 2 tiers – client / serveur Présentation et traitements sont sur le clientLes données sur le serveurContexte multi-utilisateurs avec accès aux données centralisées

Page 38: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

38

L'architecture client-serveur: (4)

Architecture 3 tiersLa présentation est sur le clientLes traitements sont pris par un serveur intermédiaireLes données sont sur un serveur de donnéesContexte multiutilisateur internet

Page 39: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

39

L'architecture client-serveur: (5)Architecture n tiersLa présentation est sur le clientLes traitements sont pris par un serveur intermédiaireLes données sont sur un serveur de donnéesContexte multi-utilisateurs internet

Page 40: Zouhair ELHADARI  Centre de BTS Dakhla 2 ème année BTS DSI Développement d’application client/serveur.

2ème année BTS DSI Prof:EL HADARI zouhair

40

Fin du Chapitre