chapitre 3
1. Introduction
Plusieurs serveurs d'application existent dans le marché,
parmi lesquels on peut citer:
· .Net Server de Microsoft.
· Oracle 9i Application Server de Oracle.
· WebSphere Application Server de IBM.
· Borland appServer (BES).
· ColdFusion de Allaire (Macromédia).
· iPlanet Application Server (Com one) de Sun.
· JBoss (logiciel libre).
Au milieu des années 1990s, oracle commença de
réaliser les produits oracle web server et oracle application server. Ce
dernier est devenu un système très sophistiqué qui se
compose de modules interconnectés configurable selon les besoins des
utilisateurs. Il y a deux aspects pour voir l'architecture du SAO (serveur
d'application oracle).
2. L'aspect conceptuel
Les produits oracle sont évolués d'où on
peut figurer des architectures à deux niveaux, trois niveaux et à
quatre niveaux conformément aux exigences des utilisateurs.
Les produits oracle résident dans tous les niveaux de
l'architecture (figure 07), où chaque niveau représente un palier
de matériel, la règle c'est que plus de matériel puisant
plus de serveurs supportés.
Figure 07: Niveaux Application oracle et produits
composant Les composants du serveur d'application résidents
dans chaque niveau:
· Niveau client: contient le navigateur
web pour le client.
· Niveau web: contient le serveur HTTP
oracle et le web cache.
· Niveau serveur d'application: contient
le noyau du serveur d'application et les produits auxiliaires comme oracle
portal, oracle developer, oracle report et oracle forms server.
· Niveau base de donnée: contient
le serveur de base de donnée, qui peut composer d'un ou plusieurs
instances.
Les petites entreprises travaillent sur une architecture à
deux niveaux, avec une machine puissante le plus souvent avec plusieurs RAM et
plusieurs CPU, regroupant les produits des trois niveaux (figure 08). Le profit
de cette architecture est le partage des ressources du serveur.
Figure08: architecture serveur d'application deux
niveaux
Le modèle à trois niveau est prédominant
dans les entreprise moyenne, dans ce modèle (figure 09) le niveau client
est suivi par le niveau serveur web et serveur d'application dans une machine
séparée, et le serveur base de donnée c'est le
troisième niveau. Le profit de ce modèle sur le
précédent est que l'incrémentation des demandes de
traitement au niveau du serveur de base de donnée ou du serveur
d'application n'affecte pas les autres composants, au plus des instances du
serveur d'application et des instances du SGA peuvent être créer
selon les besoin de traitement.
Figure 09: architecture serveur d'application trois
niveaux
Chaque niveau peut contenir plusieurs instances de ces composants
(figure 10).
Figure 10: architecture multi instances
S'il y a eu de surcharge dans un niveau, l'administrateur peut
créer des instances sur des autres serveurs et les adaptent au
système, ce qui montre l'extensibilité de l'architecture du
serveur d'application.
Niveau web
Niveau serveur d'application
Niveau base de donnée
3. L'aspect fonctionnel
Chaque niveau de l'architecture a des fonctions bien
spécifiées réalisables par ces composants
- écoute les requêtes des clients. - cache le
contenu.
- équilibre la charge sur les serveurs d'application.
|
- Gère la logique de travail.
- Formate les documents générés.
- Développe les pages web, forms, report. - Gère la
sécurité.
|
- Stocke et retrouve les données. - gère les
relations des données. - préserve les données d'usage.
|
3.1 Le niveau client
Le niveau client consiste en une application JAVA ou un
navigateur web. Dans le cas d'un navigateur web l'application réside
complètement dans le niveau serveur d'application. L'avantage est que le
client utilise le navigateur web de n'importe quel emplacement, et travaille
sur la dernière version de l'application.
3.2 Le niveau web
Les deux composants principaux dans ce niveau sont le serveur
HTTP Oracle et le web cache. Les fonctions de ce niveau sont la gestion des
requêtes arrivantes, cacher les messages du web et renvoyer les page XML
et HTML aux clients. Voici un peu de détail sur les composants de ce
niveau :
· Le serveur HTTP oracle (OHS) :
Tout système web d'oracle doit contenir assez de port
d'écoute pour traiter la gamme des requêtes arrivantes. L'OHS
écoute sur un port spécifique et adresse les requêtes
J2EE arrivantes au récipient OC4J le moins chargé
utilisant le module mod_OC4J. Il
est nécessaire que le serveur web dispose d'une
intelligence de balancement de charge pour ne pas surcharger un container
OC4J.
· Le web cache :
Ce composant améliore les performances par la
réduction de la génération du page web statique et
dynamique. Il est situé au front du serveur http et il stocke le contenu
des pages statiques et dynamiques.
3.3 Le niveau serveur d'application
Dans ce niveau réside le noyau de serveur d'application
avec un ensemble d'outils et de produits. Les composants centraux de ce niveau
sont les instances du serveur d'application, et ces instances supportent le
container JAVA d'oracle (OC4J). L'OC4J réceptionner les javabeans des
applications d'entreprise, pourvoir la sécurité et maintenir la
connectivité. En plus des instances du serveur d'application, ce niveau
contient des outils pour les fonctions suivantes:
+ Oracle portal: ce composant permet la
création et le déploiement rapide des site web dynamique.
+ Oracle discoverer: ce composant permet
l'implémentation facile des requêtes de client.
+ Oracle forms server: ce composant est
utilisé pour formater, déployer et rendre des
présentations web au client se basant sur une base de données
oracle.
+ Oracle personalization: se basant sur un
historique des pages des utilisateurs
stocké dans une base, ce composant pourvoi des URL
personnalisées, on parle de la
garde de trace et la facilité de la création des
pages web personnalisées. + Oracle wireless: ce
composant permet la communication entre le serveur
d'application et les appareils sans fil comme les PDAs et la
cellule de téléphones.
Le Wireless reformate dynamiquement les informations pour
être afficher correctement sur les écrans limités de la
plus parts des appareils sans fil.
+ Oracle report server: ce composant permet le
déploiement rapide des rapports,
des documents et des commerce tableurs on utilisant les
données d'une base.
+ Single sign-on (SSO) : c'est un système
complet d'authenticité pour identifier les
utilisateurs et de gérer les rôles et les services
web.
+ Oracle Internet directory (OID) : cet
accommodant service d'annuaire (LDAP)
permet de centraliser les informations des utilisateurs, des
applications et des ressources de l'entreprise.
+ Metadata repository (infrastructure) : ce
composant critique permet le stockage des Metadonnée du serveur
d'application et constitue une interface commune de
gestion entre les instances du serveur d'application et les
autres composants.
+ Oracle management server (OMS) : ce composant
de la console du chef d'entreprise permet la gestion des instances du serveur
d'application, bases de données et des autres applications.
+ Oracle application server toplink : Dans les
langages orienté objet (OO) telles que Java, C #, ou C++, les objets
peuvent être instanciers et détruits d'après les besoins du
programme, Pour les développeurs Java, TopLink fournit un
mécanisme pour rendre les objets Java persistants à travers les
sessions.
3.4 Le niveau base de donnée
La base de données relationnelle du serveur d'application
(ou toute autre base de données) réside dans le niveau base de
données. La fonction du niveau base de données est de fournir un
stockage persistant aux applications. Le Serveur d'application
aussi contient une instance spéciale appelée Infrastructure qui
utilise une base de données pour stocker la Metadonnée. Cette
base de données est plus correctement dans le niveau du serveur
d'application car elle ne fournit pas de stockage persistant pour
l'application.
Le serveur d'application fournit une méthode de placer le
schéma de la base de données de l'Infrastructure dans une base de
données dans le niveau base de données, cependant, meilleure
volonté des usages encore recommandée que le support de la base
de données de l'Infrastructure et le support de la base de
données client doivent être écartés pour des raisons
de performance.
|