Au sens strict, un serveur Web est un sous-ensemble d’un serveur d’applications.
Un serveur Web fournit du contenu Web statique (par exemple, des pages HTML, des fichiers, des images, des vidéos), principalement en réponse à des requêtes HTTP provenant d’un navigateur Web.
Un serveur d’applications peut généralement fournir du contenu Web également, mais sa tâche principale est de permettre l’interaction entre les clients utilisateurs et le code d’application côté serveur (le code représentant ce que l’on appelle souvent la logique métier) de manière à générer et fournir du contenu dynamique, tel que les résultats de transactions, l’aide à la décision ou les analyses en temps réel.
Le client d’un serveur d’applications peut être l’interface utilisateur de l’application elle-même, un navigateur Web ou une application mobile. L’interaction client-serveur peut se faire via un certain nombre de protocoles de communication. Cependant, dans la pratique, la limite entre les serveurs Web et les serveurs d’applications s’est estompée, d’autant plus que le navigateur Web est devenu le client d’application de prédilection et que les attentes des utilisateurs en matière d’applications Web et de performances ont augmenté.
La plupart des serveurs Web prennent en charge des plug-ins pour les langages de script (par exemple, ASP, JSP, PHP, Perl) qui permettent au serveur Web de générer du contenu dynamique basé sur la logique côté serveur. Un nombre croissant de serveurs d’applications non seulement intègrent des capacités de serveur Web, mais utilisent HTTP en tant que protocole principal et prennent en charge d’autres protocoles (par exemple CGI et ses variantes) pour l’interfaçage avec les serveurs Web.
Ils permettent également aux applications Web d’utiliser des services tels que le proxy inverse, le clustering, la redondance et l’équilibrage de charge, des services qui améliorent les performances et la fiabilité et permettent aux développeurs de se concentrer moins sur l’infrastructure et davantage sur le codage. Pour rendre les choses encore plus confuses, de nombreux serveurs Web et certains serveurs d’applications sont désignés ou se désignent eux-mêmes en tant que serveurs d’applications Web.
Au final, les serveurs Web et les serveurs d’applications les plus populaires sont aujourd’hui des hybrides des deux. La plupart des applications de plus en plus riches que vous utilisez actuellement combinent du contenu Web statique et du contenu d’application dynamique, fournis par un mélange de technologies de serveur Web et de serveur d’applications.
Le marché est inondé de serveurs Web et de serveurs d’applications, bien trop nombreux pour être énumérés ici. Nous avons donc préféré dresser la liste des options open source gratuites les plus populaires :
Nginx est un serveur Web open source qui propose des fonctionnalités de proxy inverse, d’équilibrage de charge, de proxy de messagerie et de cache HTTP. Des versions commerciales et compatibles de Nginx sont également disponibles sur Nginx, Inc.
Selon Netcraft, société de recherche sur Internet et de prévention de la cybercriminalité, Nginx servait ou faisait office de proxy pour près de 38 % de tous les sites Web du monde et plus de 25 % des millions de sites les plus fréquentés en décembre 2019. Dropbox, Netflix et Zynga font partie des entreprises de renommée mondiale qui utilisent Nginx.
Lancé en 1995, Apache HTTP Server (également connu sous le nom d’« Apache ») est un autre serveur Web open source gratuit et populaire qui, jusqu’à récemment, alimentait plus de sites Web que tout autre serveur Web (71 % à son apogée) avant d’être dépassé par Nginx en avril 2019. En décembre 2019, Apache desservait plus de 24 % de tous les sites dans le monde et 31 % du million de sites les plus fréquentés.
Apache Tomcat est un serveur d’applications open source qui exécute des servlets Java, affiche et fournit des pages Web contenant du code JSP et sert des applications Java Enterprise Edition (Java EE). Lancé en 1998, Tomcat est le serveur d’applications Java open source le plus utilisé.
Glassfish est un serveur d’applications Java EE open source lancé par Sun Microsystems en 2006 et hébergé aujourd’hui par l’Eclipse Foundation. Comme la plupart des serveurs d’applications Java, Glassfish prend notamment en charge les servlets Java et les Enterprise JavaBeans (EJB), mais il peut également fonctionner en tant que serveur Web et ainsi proposer du contenu Web en réponse aux requêtes HTTP.
Découvrez comment une infrastructure cloud hybride peut alimenter votre stratégie d’IA. Apprenez des experts IBM comment transformer la technologie existante en un système agile et prêt pour l’IA qui stimule l’innovation et l’efficacité dans l’ensemble de vos opérations métier.
Découvrez comment les solutions de cloud hybride peuvent optimiser vos opérations métier pilotées par l’IA. Découvrez dans les études de cas et les solutions présentées comment les entreprises utilisent le cloud hybride d’IBM pour gagner en efficacité, en évolutivité et en sécurité.
Apprenez les principales différences entre infrastructure en tant que service (IaaS), plateforme en tant que service (PaaS) et logiciel en tant que service (SaaS). Découvrez comment chaque modèle cloud offre différents niveaux de contrôle, d’évolutivité et de gestion pour répondre aux différents besoins métier.
Découvrez les coûts cachés des déploiements de l’IA générative et apprenez des experts comment rendre vos investissements IA plus efficaces et déterminants.
Découvrez les fondamentaux de la gestion informatique, notamment son caractère essentiel pour les organisations modernes et les fonctionnalités principales qui garantissent des opérations fluides et efficaces dans l’ensemble des systèmes technologiques.
Découvrez une série de tutoriels et de ressources pour vous aider à gérer et à prendre en charge l’infrastructure informatique, de la gestion des serveurs et des systèmes de stockage à l’intégration cloud et à la sécurité réseau.
IBM Cloud Infrastructure Center est une plateforme logicielle compatible avec OpenStack pour gérer l’infrastructure de clouds privés sur IBM zSystems et IBM LinuxONE.
Découvrez des serveurs, des solutions de stockage et des logiciels conçus pour votre stratégie d’entreprise en matière de cloud hybride et d’IA.
Trouvez la solution d’infrastructure cloud adaptée aux besoins de votre entreprise et ajustez les ressources en fonction de la demande.