2010-01-02 111 views

Respuesta

6

A 'servidor web' es generalmente cualquier programa servidor que sirve de contenido utilizando los protocolos http (o https). Estos servidores tienden a escuchar en puertos específicos (80 o 443). Los clientes para estos son generalmente navegadores web como Chrome, Firefox o Internet Explorer.

ejemplos de servidores web: Apache, Microsoft IIS

'servidor de aplicaciones' es un término mucho más difusa, menos bien definido. Podría referirse a cualquier programa que proporcione respuestas a solicitudes de clientes para una aplicación determinada.

En el contexto del servicio web, un 'servidor de aplicaciones' tiende a referirse a un marco de nivel superior utilizado para generar contenido dinámico. Esto podría ser algún tipo de contenedor, dentro del cual puede implementar una 'aplicación web' en particular. Los ejemplos incluirían Apache Tomcat, WebSphere, JBoss, etc.

En ambos casos, el término también podría referirse al hardware de la máquina que aloja el software para hacer estas cosas.

+0

IIS es también un servidor de aplicaciones para ASP.NET. –

0

Un servidor web a veces puede actuar como un servidor de aplicaciones (por ejemplo, cuando aloja servicios web). Sin embargo, un servidor de aplicaciones no tiene que implementarse como un servidor web. Simplemente puede escuchar en los sockets tcp y actuar en consecuencia

2

El servidor web es un contenedor para operaciones simples como el contenedor servlet/jsp. El servidor de aplicaciones es un servidor web tipo contenedor pero agrega más operaciones que el servidor web, como el administrador de transacciones, la fuente de datos, la agrupación en clústeres, el equilibrio de carga, la mensajería y otras operaciones comerciales complicadas.

servidor web como apatche tomcat.

servidor de aplicaciones como jboss, glassfish, web sphere, servidor de aplicaciones oracle.

+0

No estoy de acuerdo. Un servidor web es solo una forma específica de servidor de aplicaciones. – skaffman

+0

objetivo acordar que el servidor web es una edición especial del servidor de aplicaciones. El servidor web es un contenedor liviano y el servidor de aplicaciones es un contenedor pesado porque contiene muchos servicios y contenedores como jsp/servler y contenedor ejb y otros servicios. – bassem

+0

@bassem: Eso realmente no tiene mucho sentido ... En primer lugar, un servidor web no es un "contenedor liviano". Algunos servidores web son más livianos que otros. lighttpd es un servidor web rápido, mínimo, de tamaño pequeño, por ejemplo. Apache no podría llamarse peso ligero. En segundo lugar, el término es 'Servidor de aplicaciones' es muy genérico. Significa cosas diferentes dependiendo de a quién le preguntes. – user242275

-1

El servidor Web

Un servidor Web maneja el protocolo HTTP. Cuando el servidor web recibe una solicitud HTTP, responde con una respuesta HTTP, como el envío de una página HTML. Para procesar una solicitud, un servidor web puede responder con una página o imagen HTML estática, enviar una redirección o delegar la generación de respuesta dinámica a algún otro programa como scripts CGI, JSP (páginas de JavaServer), servlets, ASP (páginas Active Server), JavaScripts del lado del servidor, o alguna otra tecnología del lado del servidor. Cualquiera que sea su propósito, dichos programas del lado del servidor generan una respuesta, la mayoría de las veces en HTML, para ver en un navegador web.

Comprenda que el modelo de delegación de un servidor web es bastante simple. Cuando llega una solicitud al servidor web, el servidor web simplemente pasa la solicitud al programa que mejor pueda manejarlo. El servidor web no proporciona ninguna funcionalidad más allá de simplemente proporcionar un entorno en el que el programa del lado del servidor puede ejecutar y devolver las respuestas generadas. El programa del lado del servidor por lo general se proporciona funciones tales como el procesamiento de transacciones, la conectividad de la base de datos y la mensajería.

Mientras que un servidor Web puede no propio soporte transacciones o la agrupación de conexiones de base de datos, se pueden emplear diversas estrategias para la tolerancia a fallos y escalabilidad tales como el equilibrio de carga, almacenamiento en caché y agrupamiento-características menudo asignados erróneamente como características reservado sólo para los servidores de aplicaciones.

El servidor de aplicaciones

En cuanto al servidor de aplicaciones, de acuerdo con nuestra definición, un servidor de aplicaciones expone la lógica de negocio a las aplicaciones cliente a través de diversos protocolos, posiblemente incluyendo HTTP. Mientras que un servidor web trata principalmente con el envío de HTML para su visualización en un navegador web, un servidor de aplicaciones proporciona acceso a la lógica de negocios para que lo utilicen los programas de aplicaciones cliente. El programa de aplicación puede usar esta lógica tal como llamaría a un método en un objeto (o una función en el mundo de los procedimientos).

Dichos clientes de servidor de aplicaciones pueden incluir GUI (interfaz gráfica de usuario) ejecutándose en una PC, un servidor web o incluso en otros servidores de aplicaciones. La información que viaja de ida y vuelta entre un servidor de aplicaciones y su cliente no está restringida al marcado de visualización simple. En cambio, la información es lógica del programa. Como la lógica toma la forma de llamadas a datos y métodos y no a HTML estático, el cliente puede emplear la lógica comercial expuesta como lo desee.

En la mayoría de los casos, el servidor expone esta lógica comercial a través de una API componente, como el modelo de componente EJB (Enterprise JavaBean) que se encuentra en servidores de aplicaciones J2EE (Java 2 Platform, Enterprise Edition). Además, el servidor de aplicaciones administra sus propios recursos. Tales tareas de mantenimiento incluyen la seguridad, el procesamiento de transacciones, la agrupación de recursos y la mensajería. Al igual que un servidor web, un servidor de aplicaciones también puede emplear diversas técnicas de escalabilidad y tolerancia a fallas.

+1

¿Copió esta respuesta palabra por palabra de http://www.javaworld.com/article/2077354/learn-java/app-server-web-server-what-s-the-difference.html y no dio ningún crédito ? – Kon

Cuestiones relacionadas