Diapositive 1

Download Report

Transcript Diapositive 1

Séminaire (
)
Promo. M2 ESCE-Tunis 2006/07
6-12 Février 2007
Conception d’un système d'information sur Internet
Architecture trois-tiers :
technologies
Par :
Sahbi SIDHOM
MCF. Université Nancy 2
Équipe de recherche SITE – LORIA
[email protected]
cours n°1
M2. ESCE (S. Sidhom)
Introduction :
 L'objectif premier d'un système d'information, quel
qu'il soit, est de permettre à plusieurs utilisateurs
d'accéder aux mêmes informations :


pour cela, il faut donc regrouper les informations utilisées
par l'entreprise ;
en terme technique, cela se traduit par la centralisation des
données au sein d'une base de données.
 Tout système d'information nécessite la réalisation de
trois groupes de fonctions:



le stockage des données,
la logique applicative et
la présentation.
2
 Stockage et accès aux données :
Le système de stockage des données a pour but de
conserver une quantité plus ou moins importantes
de données de façon structurée.
On peut utiliser pour cette partie des systèmes
(très variés) qui peuvent être :




des systèmes de fichiers,
des mainframes,
des systèmes de bases de données relationnelles,
etc...
3
 Logique applicative :
La logique applicative est la réalisation
informatique du mode de fonctionnement
de l'entreprise.
Cette logique constitue les traitements
nécessaires sur l'information afin de la
rendre exploitable par chaque utilisateur.
4
 Présentation :
La présentation est la partie la plus
immédiatement visible pour l'utilisateur.
Elle a donc une importance primordiale pour
rendre attrayante l'utilisation de l'informatique.
Son évolution a été très importante depuis les
débuts de l'informatique et des systèmes
d’information.
5
Architectures client/serveur
constituent une étape importante dans l'évolution
des systèmes d'informations…
6
1. Architecture 2-tiers
GET
Ressources
OUT
7
L'architecture à deux niveaux (aussi appelée architecture 2tier),
« tier » signifiant rangée en anglais,
caractérise les systèmes clients/serveurs pour lesquels :



le client demande une ressource (GET), et
le serveur la lui fournit directement (OUT), en utilisant ses
propres ressources.
Remarque :
Cela signifie que le serveur ne fait pas appel à une autre
application afin de fournir une partie du service.
8
 L'architecture à deux niveaux est donc une
architecture client/serveur dans laquelle :
 le serveur est polyvalent,
c'est-à-dire qu'il est capable de fournir
directement l'ensemble des ressources
demandées par le client.
9
2. Architecture 3-tiers
GET
OUT
GET
OUT
Ressources
10
Dans l'architecture à 3 niveaux, appelée architecture 3-tiers,
il existe un niveau intermédiaire, c'est une architecture
partagée entre :
1.
Un client, c'est-à-dire l'ordinateur demandeur de ressources,
équipée d'une interface utilisateur (généralement un navigateur
web);
2.
Le serveur d'application (ou middleware), chargé de fournir
les ressources mais faisant appel à un autre serveur;
3.
Le serveur de données (ou database server) qui va fournir
au serveur d'application les données dont il a besoin.
11
 Dans l'architecture à trois niveaux, les applications
au niveau serveur sont délocalisées,
c'est-à-dire, que chaque serveur est spécialisé dans
une tâche :
 serveur web,
 serveur de base de données.
 Une plus grande flexibilité/souplesse ;
 Une sécurité accrue car elle peut être définie à chaque
niveau ;
 De meilleures performances, étant donné le partage des
tâches entre les différents serveurs.
12
3. Question :
Architecture client/serveur
en 1-tier ?
13
4. Architecture multiniveaux
 Constat : dans l'architecture à 3 niveaux, chaque
serveur (niveaux 2 et 3) effectue une tâche (un
service) spécialisée :
 Un serveur peut donc utiliser les services d'un ou
plusieurs autres serveurs afin de fournir son propre
service.
 Par conséquent, l'architecture à trois niveaux est
potentiellement une architecture à N niveaux...
14
Architecture :
15
Client lourd :
 Le terme « client lourd »,
en anglais « fat client » ou « heavy client »
par opposition au client léger,
désigne une application cliente graphique exécutée sur le
système d'exploitation de l'utilisateur.
 Un client lourd possède généralement des capacités de
traitement évoluées et peut posséder une interface
graphique sophistiquée.

Néanmoins, ceci demande un effort de développement et tend
à mêler la logique de présentation (l'interface graphique)
avec la logique applicative (les traitements).
16
Client léger :
 Le terme « client léger »,
parfois « client pauvre », en anglais « thin client » par
opposition au client lourd,
désigne une application accessible via une interface web
(en HTML) consultable à l'aide d'un navigateur web,
où la totalité de la logique métier est traitée du côté du
serveur. Pour ces raisons, le navigateur est parfois appelé
client universel.
 L'origine du terme provient de la limitation du langage
HTML, qui ne permet de faire des interfaces relativement
pauvres en interactivité, si ce n'est pas le biais du
langage javascript, DHTML, XHTML, etc..
17
Client riche :



Un « client riche » est un compromis entre le client léger et le
client lourd.
L'objectif du client riche est donc de :
 proposer une interface graphique, décrite avec une
grammaire de description basée sur la syntaxe XML,
 obtenir des fonctionnalités similaires à celles d'un client lourd
(glisser déposer, onglets, multi fenêtrage, menus déroulants,
…).
Il existe des standards permettant de définir une application
riche :
 XAML (eXtensible Application Markup Language), prononcez
« zammel », un standard XML proposé par Microsoft ;
 XUL, prononcez « zoul », un standard XML proposé par la
fondation Mozilla ;
 Flex, un standard XML proposé par la société Macromedia
18