¿Diferencia entre el servidor Apache HTTP y Apache Tomcat? [cerrado]
¿Cuál es la diferencia en términos de funcionalidad entre el servidor Apache HTTP y Apache Tomcat?
Sé que Tomcat está escrito en Java y el servidor HTTP está en C, pero aparte de eso, no sé realmente cómo se distinguen. ¿Tienen funcionalidad diferente?
Apache Tomcat se utiliza para implementar sus servlets y JSP de Java. Entonces, en su proyecto Java puede crear su archivo WAR (abreviatura de Web ARchive) y simplemente colocarlo en el directorio de implementación en Tomcat.
Básicamente, Apache es un servidor HTTP que sirve HTTP. Tomcat es un servidor Servlet y JSP que sirve tecnologías Java.
Tomcat incluye Catalina, que es un contenedor de servlets. Un servlet, al fin y al cabo, es una clase Java. Los archivos JSP (que son similares a PHP y archivos ASP más antiguos) se generan en código Java (HttpServlet), que luego el servidor compila en archivos .class y los ejecuta la máquina virtual Java.
Además de las excelentes respuestas anteriores, creo que debería decirse que Tomcat tiene su propio servidor HTTP integrado y también es completamente funcional para servir contenido estático. Dependiendo de la configuración de su máquina virtual Java, en realidad puede superar el rendimiento de los conectores tradicionales en Apache, como mod_proxy y mod_jk.
Dicho esto, un servidor Tomcat totalmente optimizado debería servir archivos estáticos rápidamente y si tiene servlets Java, archivos JSP y ColdFusion además de contenido estático, es posible que Tomcat haga un excelente trabajo por sí solo.
- Apache es un servidor http de propósito general, que admite una serie de opciones avanzadas que Tomcat no admite.
- Aunque Tomcat se puede utilizar como un servidor http de propósito general, también puede configurar Apache y Tomcat para que trabajen juntos con Apache sirviendo contenido estático y reenviando las solicitudes de contenido dinámico a Tomcat.
Tomcat es principalmente un servidor de aplicaciones, que atiende solicitudes a servlets Java personalizados o archivos JSP en su servidor. Generalmente se usa junto con el servidor HTTP Apache (al menos en mi experiencia). Úselo para procesar manualmente las solicitudes entrantes.
El servidor HTTP, por sí solo, es mejor para servir contenido estático... archivos html, imágenes, etc.
un servidor apache es un servidor http que puede atender cualquier solicitud http simple, mientras que el servidor tomcat es en realidad un contenedor de servlets que puede atender solicitudes de servlet java.
El servidor web [apache] procesa las solicitudes del cliente web (navegadores web) y las reenvía al contenedor de servlets [tomcat] y el contenedor procesa las solicitudes y envía una respuesta que el servidor web reenvía al cliente web [navegador].
También puede consultar este enlace para obtener más aclaraciones: -
https://sites.google.com/site/sureshdevang/servlet-architecture
Consulte también esta respuesta para seguir investigando: -
https://softwareengineering.stackexchange.com/a/221092