|
|
|
|
Infrastructure/Chantiers |
Les
serveurs d'applications en 7 questions |
Le serveur d'applications constitue une interface indispensable enrte l'utilisateur sur le Web et la logique métier de l'entreprise. Sur quelles technologies repose-t-il ? Quels en sont les grands fournisseurs ? (Jeudi
3 octobre 2002) |
|
Qu'est-ce
qu'un serveur d'applications ?
Comme son nom l'indique,
un serveur d'applications est un outil permettant de construire,
à partir de composants logiciels (généralement
objet) hétérogènes et distribués,
des applications de toutes sortes délivrées
ensuite à l'utilisateur. Rappelons qu'un composant
véhicule à la fois des données et
une logique applicative. Sorte de "passe plats",
le serveur d'applications s'adosse aujourd'hui à
deux couches principales. La première est constituée
d'un serveur Web qui délivre
les interfaces utilisateur sous forme de pages HTML en
les générant éventuellement à
la volée à partir des informations dont
il dispose - celles-ci sont le plus souvent contenues
dans une base de données tierce. Baptisée
"logique métier", la seconde assure la
gestion des différents traitements transactionnels
mis en oeuvre par les applications en vue de manipuler
ces données et les interpréter en termes
"métier".
Quels sont ses grands domaines d'intervention ?
Les
serveurs d'applications répondent à deux
grandes problématiques : la mise à
disposition d'un site Web sur Internet d'une part, et
la diffusion d'applications métier sur un réseau
interne d'entreprise d'autre part. Antérieure à
la première, la seconde ne tire pas toujours parti
des technologies Web pour délivrer l'interface
utilisateur des programmes. En effet, elle peut exploiter
également la méthode du "client/serveur"
- qui, rappelons-le , nécessite l'installation
d'un logiciel particulier (dit "client") sur
le poste de travail. Principal avantage de cette méthode :
elle offre plus de possibilités fonctionnelles
que le Web, autour de la gestion et de la manipulation
graphique notamment.
Qu'en
est-il des principales technologies dans ce domaine
?
Sur
ce terrain, on distingue l'architecture libre ou
open source de la plate-forme reposant sur le standard
J2EE de Sun. L'une se résume la plupart du temps
en un système d'exploitation Linux équipé
d'un serveur Web Apache et d'une logique applicative elle-même
open source, développée
par exemple à l'aide du langage PHP. Le tout étant
couplé classiquement à une base de données
mySQL. L'autre exploite les différents services
définis par J2EE (Java
2 Enterprise Edition). Des modèles de composants
Java qui définissent par exemple comment accéder à un
annuaire, à une base de données, comment faire dialoguer
des machines virtuelles Java ou encore quelles interfaces
un applicatif doit présenter pour dialoguer avec un autre
environnement.
Avec
.Net, Microsoft propose-t-il un serveur d'applications ?
Historiquement,
Microsoft n'appartient pas au monde des serveurs d'application.
Ce positionnement est néanmoins sur le point
de changer. Explication :
le géant de Redmond prépare le lancement
d'une nouvelle version de l'édition professionnelle
de Windows. Baptisée Windows
.Net Server, cette solution dont la sortie est
attendue courant 2003 devrait intégrer à
la fois le système d'exploitation de la firme
et son serveur Web (Internet Information Server). Présentant
l'ensemble des caractéristiques d'un serveur d'applications
traditionnel, ce produit devrait pouvoir permettre à
Microsoft d'être désormais classé
dans les études relatives à ce marché,
ce qui jusqu'alors n'était pas le cas.
Quelles sont les différentes composantes d'une
telle brique...
Un programme
exécuté par un serveur d'application s'appuie
généralement sur trois éléments
applicatifs principaux :
Une couche qui gére le
formatage des pages HTML. Elle utilise pour ce faire
des langages de "script" (APS, JSP, etc.)
ou des composants particuliers tels que des Servlets.
Des
composants métier qui assurent le traitement
des données : il peut s'agir ici d'objets
COM (Microsoft) ou EJB (J2EE) par exemple.
Une
série de services inter-applicatifs (interfaces,
connecteurs, courtier de messages, etc.) qui ouvrent des
accès vers d'autres applications (bases de données,
outils métier, etc.) qu'elles soient installées
en local ou non.
...et ses fonctions spécifiques ?
Parmi
elles, on relève en premier lieu l'équilibrage de charge
(ou "load balancing"), dispositif qui permet d'aiguiller
en temps réel les requêtes utilisateur au sein d'une
grappe de machines en vue de gérer au mieux les pics
d'audience de l'application. Autres mécanismes classiquement
proposés par les éditeurs : la sauvegarde des données
de production par réplications (également appelées "failover")
et la possibilité de modifier l'applicatif sans
avoir à mettre le serveur hors service. Aux côtés de
ces fonctions généralistes, certains avancent des outils
visant des problématiques particulières :
la gestion de contenu ou de travail collaboratif notamment.
Quels
sont les grands éditeurs positionnés sur
ce segment ?
D'après une
étude publiée par Gartner Dataquest en mai 2002, BEA et
IBM arriveraient largement en tête sur le créneau des
serveurs d'applications. Affichant respectivement 34%
et 31% de parts de marché, ils seraient suivis
d'assez loin par Sun (9%), Iona (3%) et Sybase (1%).
|
|
|
|
|
|