Apache 2.0 sur Windows

par Dustin Puryear - Mis en ligne le 13/05/2004
Le célèbre serveur Web open-source élargit son champ d'action sous Windows
Les serveurs Web sont devenus l'une
des briques de base de l'infrastructure
IT du monde des affaires. Sur le marché
des serveurs Web, deux noms aujourd'hui
se détachent : Microsoft IIS,
qui a dominé pendant longtemps le
marché Windows Server, et l'Apache
HTTP Server, qui a été le préféré pour
d'autres implémentations d'OS, principalement
Unix.Dans ces dernières années, IIS a
été beaucoup critiqué pour diverses
raisons, particulièrement des problèmes
de sécurité. Mais vers quels
autres serveurs Web les sites Windows
pouvaient-ils se tourner ? Apache, géré
par l'Apache Group, est un serveur
Web puissant, élaboré et mature considéré
par beaucoup comme le fleuron
de la communauté open-source. Et
beaucoup de sociétés qui utilisent
Apache dans leurs produits - IBM, par
exemple, qui l'utilise dans son produit
WebSphere - contribuent activement à
Apache et le supportent. Et donc,
le site Web continue à croître et à
s'adapter à la rapide évolution de l'environnement
de gestion. Cependant,
l'utilisation du produit sur des platesformes
Windows est encore à ce jour limitée.
Avec la release d'Apache 2.0, ce site
Web hautement fiable et évolutif a accru
sa portabilité et sa performance sur
la plate-forme Windows, et a amélioré
sa portabilité sur toutes les platesformes.
Les améliorations de la nouvelle
version sont telles que vous pouvez
bénéficier d'Apache même dans un
contexte Windows 2000 ou Windows
NT.
La volonté de l'Apache Group de supporter davantage de plates-formes a d'abord pris la forme d'une compilation traditionnelle : un certain code seulement est compilé dans un programme, selon qu'une condition stipulée (l'OS en service est Solaris, par exemple) est vraie. Au fur et à mesure que les plates-formes supportées augmentaient et que leurs variations s'accentuaient, la base de code Apache est rapidement devenue extrêmement complexe et l'utilisation d'une compilation conditionnelle a rapidement freiné le développement. L'Apache Group devait aussi prendre en compte un autre facteur : la performance. Apache s'appuyait sur quelques postulats de base sur la façon de traiter les CPU, l'I/O, la mémoire et les processus. Cela ne posait pas de problèmes sur la plupart des systèmes Unix parce qu'Apache avait été développé sur cette plate-forme et principalement pour elle. En revanche, le modèle d'architecture sur lequel Apache avait été construit ne fonctionnait pas bien sur des OS non Unix et même sur certains types d'Unix. Donc, ces postulats ont conduit à des problèmes d'évolutivité sur ces plates-formes.
L'Apache Group a décidé de régler ces deux problèmes en même temps, en construisant Apache 2.0 sur une couche abstraite et en réglant la mise en oeuvre de cette couche par rapport à la plate-forme sous-jacente. Et c'est ainsi qu'Apache 2.0 améliore sensiblement la portabilité et les performances.
L'une des abstractions intégrées désormais dans Apache 2.0 est l'APR (Apache Portable Runtime). Comme le montre la figure 1, l'APR sert d'interface entre l'OS et l'Apache HTTP Server et traite les services système comme l'I/O, la mémoire partagée, et la gestion des processus enfants. Mais l'APR n'affecte pas le modèle qu'Apache utilise quand il traite des connexions client simultanées, qui étaient le talon d'Achille d'Apache sur Windows. Les versions Apache antérieures supposent que l'OS sous-jacent peut efficacement créer les processus enfants. Mais certains OS, comme Windows et IBM AIX, supportent mieux le multithreading ; aussi l'utilisation de processus enfants pour traiter des connexions client-réseau n'est pas la solution optimale sur ces platesformes. Apache avait donc besoin d'utiliser un thread pour traiter chaque connexion. (Le multithreading n'est pas aussi résilient vis-à -vis des erreurs que l'utilisation de processus multiples. Un thread défectueux peut causer des problèmes sur les autres threads, tandis que dans un modèle à processus multiples, chaque processus est indépendant. Toutefois, comme les serveurs Windows utilisent le modèle multithreading, un certain - quoique minime - compromis entre la fiabilité et la performance était nécessaire, en faveur de cette dernière.)
La solution de l'Apache Group est constituée par les MPM (Multi- Processing Modules). C'est une solution à la fois simple sur le plan théorique et élégante dans sa mise en oeuvre. Les MPM créent une abstraction entre Apache et la méthode utilisée pour traiter les connexions client simultanées. L'idée est que l'Apache Group - ou un développeur qui veut supporter une nouvelle plate-forme - construit un MPM propre à une architecture ou à une spécification donnée (par exemple, utiliser des processus enfants, le multithreading, ou la combinaison qui répond le mieux aux besoins de tel ou tel utilisateur). Pendant la configuration, l'utilisateur Apache choisit le MPM le mieux adapté à l'environnement de l'utilisateur, même si, par défaut, le fichier de configuration qui accompagne chaque port d'Apache utilise le MPM spécifique à cette plateforme. Apache compte ensuite sur le MPM pour traiter les détails de bas niveau de traitement des connexions client simultanées. Pour les systèmes Windows, Apache utilise le MPM winnt. Comme le montre la figure 2, ce MPM demande au serveur Apache de créer un processus enfant, lequel crée et contrôle ensuite les threads nécessaires pour servir chaque connexion client. (Un processus parent est nécessaire dans ce cas pour créer un nouveau processus si le processus client meurt.)
Nous sommes ouverts à tous les thèmes portant sur les services, les solutions et les technologies informatiques d'entreprise. Notre seule condition sera la qualité de votre contribution, quel que soit votre thème de prédilection, actualités, annonces, lancements, stratégie, tutoriaux, trucs et astuces, bonnes pratiques... cette liste n'étant pas exhaustive, stay tuned, au plaisir de collaborer.
Participez aux Microsoft IT CampsBénéficiez de formations gratuites, ouvertes et interactives animées par des architectes Microsoft ! Les Microsoft IT Camps sont un nouveau format d'évènement d'une demi-journée vous proposant d'apprendre par la pratique et comprendre comment les solutions Microsoft répondent à vos enjeux au quotidien.Découvrez les thèmes des IT Camps
Ressources Informatiques
Actualités Informatiques
Ciena déploie un réseau 100G de 2 800 km 15/05/2012 | Réseaux | 100G
Dell annonce la deuxième vague de sa 12e génération PowerEdge 15/05/2012 | Dell | Serveur
Scott Thompson, PDG de Yahoo, contraint de démissionner 14/05/2012 | Nomination | Stratégie
Sécurité : Des attaques moins nombreuses mais plus dangereuses selon HP 10/05/2012 | Sécurité | Web
Imagine Cup – Le projet Cap Street en route vers Sydney 07/05/2012 | Imagine Cup | Microsoft
Du script PowerShell à l’interface web avec Poshboard 04/05/2012 | Scripting | PowerShell
SCCM 2012 : « Gérer 100 000 utilisateurs avec un seul serveur » 04/05/2012 | System Center 2012 | TechDays 2012
UseIT 2012 – Open Data, cloud computing et cybercriminalité au programme 04/05/2012 | Salon | Evènement
Hana, mobilité, cloud : Henri van der Vaeren dévoile la stratégie de SAP 04/05/2012 | SAP | Cloud Computing
Citrix Netscaler 10 : un ADC élastique 25/04/2012 | Citrix | Appliances
MMS 2012 - Windows Server 2012 sortira en fin d’année 20/04/2012 | Windows Server 2012 | Microsoft Management Summit
MMS 2012 – System Center 2012 est disponible 18/04/2012 | System Center 2012 | Microsoft Management Summit
Hitachi cible les marchés verticaux avec les solutions NAS de BlueArc 16/04/2012 | NAS | Stockage
À la une d'IT Pro Magazine : Server Core, Archivage, Big Data et Windows Intune 06/04/2012 | Cloud Computing | Big Data
Serena renforce son offre ITSM 05/04/2012 | Administrateur | Développement
Vidéos Informatiques
Travail Collaboratif Présentation du Dell XPS 13
Travail Collaboratif Premiers déploiements massifs de SharePoint Workspace en 2012
Cloud computing « Le cloud ne doit pas être une aire de non-droit »
Windows Server Du script PowerShell à l’interface web avec Poshboard
Liens Informatiques
Ressources iT Pro
1er Guide thématique dédié à la mise œuvre d’un Cloud PrivéIT Pro Magazine | 12 pages
Guide de protection des environnements Hyper-VITPro Magazine | 4 pages
Guide d’optimisation & synchronisation des données SharePointAvepoint | 18 pages
Booster les performances des plates-formes virtuelles ?Diskeeper | 12 pages
IT Pro Magazine Spécial Windows 8IT Pro Magazine | 60 pages
Le guide du stockage signé IT Pro MagazineIT Pro Magazine | 16 pages
Testez Acronis Backup & Recovery 11 Virtual EditionAcronis | 2 pages





















