Vous êtes sur la page 1sur 17

Architecture N-Tier

Architecture Multi-Tier Traditionnellement une application informatique est un programme excutable sur une machine qui reprsente la logique de traitement des donnes manipules par lapplication. Ces donnes peuvent tre saisies interactivement via linterface ou lues depuis un disque. Lapplication met un rsultat sous forme de donnes qui sont, soit affiches, soit enregistres sur un disque.

Donnes en entre

Application

Donnes en sortie

Dans ce schma, les traitements, les donnes dentres, les donnes de sortie sont sur une seule machine.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

Architecture N-Tier
Architecture Multi-Tier On peut alors sparer lapplication en diffrentes parties : - La couche interface homme machine - La couche de traitement -La couche de gestion des donnes.

Et toute application possde ces trois parties.


On parle de couches, de niveaux ou de tier (de langlais tier : tage).

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

Architecture N-Tier
Architecture Multi-Tier Jusquau annes 90, ces trois couches taient la plupart du temps sur la mme machine. Lapplication utilisait les disques de la machine pour lire les donnes a traiter et stocker les donnes rsultantes du traitement (sauf sur les gros systmes). A partir des annes 90, vu lexplosion de la volumtrie des donnes, on a spar les applications des donnes. Ces dernires taient alors stockes dans des bases de donnes sur dautres machines. Les applications accdaient aux donnes travers les rseaux sur des machines serveurs de donnes disposant dun SGBD. Cest une architecture 2-Tier, ou encore client serveur.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

Architecture N-Tier
Architecture 2-Tier

Ce type dapplication permet dutiliser toute la puissance des ordinateurs prsents sur le rseau et permet de fournir lutilisateur une interface riche, tout en garantissant la cohrence des donnes qui restent gres de faon centralise. La gestion des donnes est prise en charge par un SGBD centralis sur un serveur ddi. On interroge ce serveur travers un langage de requte, le plus courant tant SQL. Le dialogue entre le client et le serveur se rsume donc lenvoi de requtes et aux donnes en rponse.
CNAM 2009 - 2010 Patrick Arlaud - Jrome Dupire 4

Architecture N-Tier
Architecture 2-Tier On distingue donc deux parties : 1. 2. Le client Le serveur qui se contente de rpondre aux requtes du client.

Le client provoque ltablissement dune conversation afin dobtenir des donnes ou un rsultat de la part du serveur. Cet change de messages transite travers le rseau reliant les deux machines. Il met en uvre des mcanismes complexes qui sont en gnral pris en charge par un intergiciel appel middleware. Le middleware est l'ensemble des couches rseau et services logiciels qui permettent le dialogue entre diffrents composants d'une application rpartie. Ce dialogue s'tablie sur des protocoles applicatifs communs, dfini par l'API du middleware. Le middleware se contente d'unifier, pour les applications mises en jeu, l'accs et la manipulation de l'ensemble des services disponibles sur le rseau, afin de rendre l'utilisation de ces derniers presque transparente.
CNAM 2009 - 2010 Patrick Arlaud - Jrome Dupire 5

Architecture N-Tier
Limite de larchitecture 2-Tier L'architecture client-serveur de premire gnration prsente les inconvnients suivants : - on ne peut pas soulager la charge du client qui supporte dj tous les traitements applicatifs ; - le poste client est fortement sollicit, il devient de plus en plus complexe et ncessite des mises jour rgulire, ce qui est contraignant ; - le client et le serveur sont assez bruyants, ce qui s'adapte mal des bandes passantes troites ; ce qui cantonne ce type d'application des rseaux locaux ; -il est difficile de modifier l'architecture initiale, les applications supportent donc mal les fortes montes en charge ; - la relation forte et troite entre le programme du client et l'organisation de la partie serveur complique les volutions de cette dernire ; - ce type d'architecture est grandement rigidifi par les cots et la complexit de maintenance. Nanmoins, on peut noter quelques avantages non ngligeables de ce type d'architecture : - elle permet l'utilisation d'une interface utilisateur riche ; - elle a permis l'appropriation des applications par l'utilisateur ; - elle a introduit la notion d'interoprabilit.
CNAM 2009 - 2010 Patrick Arlaud - Jrome Dupire 6

Architecture N-Tier
Architecture 3-Tiers Avec lapparition des technologies Web, il est possible de sparer la couche prsentation de la couche applicative (aussi appele couche mtier) :

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

Architecture N-Tier
Architecture 3-Tier : Couche Prsentation Elle correspond la partie de lapplication visible et interactive avec les utilisateurs. On parle dIHM. Elle peut tre ralise par une application graphique ou textuelle, en HTML, en WML (on parle alors de clients lgers). Cette interface peut prendre de multiples facettes sans changer la finalit de l'application. Dans le cas d'un systme de distributeurs de billets, l'automate peut tre diffrent d'une banque l'autre, mais les fonctionnalits offertes sont similaires et les services identiques (fournir des billets, donner un extrait de compte, etc.). Toujours dans le secteur bancaire, une mme fonctionnalit mtier (par exemple, la commande d'un nouveau chquier) pourra prendre diffrentes formes de prsentation selon qu'elle se droule sur Internet, sur un distributeur automatique de billets ou sur l'cran d'un charg de clientle en agence. La couche prsentation relaie les requtes de l'utilisateur destination de la couche mtier, et en retour lui prsente les informations renvoyes par les traitements de cette couche. Il s'agit donc ici d'un assemblage de services mtiers et applicatifs offerts par la couche infrieure.
CNAM 2009 - 2010 Patrick Arlaud - Jrome Dupire 8

Architecture N-Tier
Architecture 3-Tier : Couche applicative ou couche mtier ou encore serveur dapplications Elle correspond la partie fonctionnelle de lapplication, celle qui implmente la logique , et qui dcrit les oprations que l'application opre sur les donnes en fonction des requtes des utilisateurs, effectues au travers de la couche prsentation. Les diffrentes rgles de gestion et de contrle du systme sont mises en uvre dans cette couche. La couche mtier offre des services applicatifs et mtier la couche prsentation. Pour fournir ces services, elle s'appuie, le cas chant, sur les donnes du systme, accessibles au travers des services de la couche infrieure. En retour, elle renvoie la couche prsentation les rsultats qu'elle a calculs.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

Architecture N-Tier
Architecture 3-Tier : Couche donnes Elle consiste en la partie grant l'accs aux gisements de donnes du systme. Ces donnes peuvent tre propres au systme, ou gres par un autre systme. La couche mtier n'a pas s'adapter ces deux cas, ils sont transparents pour elle, et elle accde aux donnes de manire uniforme, on dit quil y a un faible couplage.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

10

Architecture N-Tier
Architecture 3-Tier : Couche donnes Donnes propres au systme Ces donnes sont prennes, car destines durer dans le temps, de manire plus ou moins longue, voire dfinitive. Les donnes peuvent tre stockes indiffremment dans de simples fichiers texte, fichiers XML, ou encore dans un SGBD Quel que soit le support de stockage choisi, l'accs aux donnes doit tre le mme. Cette abstraction amliore la maintenance du systme. Le DATA ACCESS OBJET (DAO ou design pattern) consiste reprsenter les donnes du systme sous la forme d'un modle objet. Par exemple un objet pourrait reprsenter un contact ou un rendez-vous. La reprsentation du modle de donnes objet en base de donnes (appele persistance) peut tre effectue laide doutils tel que HIBERNATE.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

11

Architecture N-Tier
Architecture 3-Tier : Couche donnes Donnes gres par un autre systme Les donnes peuvent aussi tre gres de manire externe. Elles ne sont pas stockes par le systme considr, il s'appuie sur la capacit d'un autre systme fournir ces informations. Par exemple, une application de pilotage de l'entreprise peut ne pas sauvegarder des donnes comptables de haut niveau dont elle a besoin, mais les demander une application de comptabilit. Celle-ci est indpendante et pr-existante, et on ne se proccupe pas de savoir comment elle les obtient ou si elle les sauvegarde, on utilise simplement sa capacit fournir des donnes jour.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

12

Architecture N-Tier
Architecture n-Tier L'architecture n-tiers est aussi appele architecture distribue ou architecture multi-tiers. L'architecture n-tiers qualifie la distribution d'applications entre de multiples services et non la multiplication des niveaux de service : les trois niveaux dabstraction dune application sont toujours pris en compte. Cette distribution est facilite par l'utilisation de composants mtier, spcialiss et indpendants, introduits par les concepts orients objets. Elle permet de tirer pleinement partie de la notion de composants mtier rutilisables et modulables. Ces composants rendent un service, si possible, gnrique et clairement identifi. Ils sont capables de communiquer entre eux et peuvent donc cooprer en tant implants sur des machines distinctes et htrognes.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

13

Architecture N-Tier
Architecture n-Tier : Technologies Les technologies : Le tier client : - Un navigateur Web - Un PDA ou SmartPhone Le tier Applicatif : - CGI - ASP - Java Servlets - JSP - PHP, Python - JavaScripts

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

14

Architecture N-Tier
Architecture n-Tier : Technologies Les technologies : Le tier donnes : - Base de donnes via SQL, JDBC, .NET - J2EE - ERP (Enterprise Resource Planning) - EAI (Enterprise Application Integration)

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

15

Architecture N-Tier
Architecture N-tier : Point de vue matriel Larchitecture prsente en purement logicielle. En consquence, chaque tage peut tre implment sur nimporte quelle machine. Ainsi, Les trois tages peuvent tre runies sur une seule ou sur plusieurs machines. Lintrt de rpartir les diffrents tages sur plusieurs machines permet un accroissement de la scurit comme nous allons le voir au travers dun exemple.

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

16

Architecture N-Tier
Architecture N-Tier : Matriel exemple Solution de micro-Payement Partenaires FW Reseau entreprise 192.168.X.X
P O S T E U T I L I S A T E U R S

Internet Network Address Translation FW Rseau non routable 10.0.0.x FW Serveur Web FW Rseau non routable 10.0.1.x FW Serveur Applications FW Rseau non routable 10.0.2.x Serveur Data

CNAM 2009 - 2010

Patrick Arlaud - Jrome Dupire

17

Vous aimerez peut-être aussi