Apache HTTP Server和Apache Tomcat在功能方面有何不同?
我知道Tomcat是用Java编写的,而HTTP服务器则是用C编写的,但除此之外,我并不真正知道它们如何区分。它们是否具有不同的功能?
Apache HTTP Server和Apache Tomcat在功能方面有何不同?
我知道Tomcat是用Java编写的,而HTTP服务器则是用C编写的,但除此之外,我并不真正知道它们如何区分。它们是否具有不同的功能?
Apache Tomcat用于部署Java Servlets和JSPs。在Java项目中,您可以构建WAR(Web ARchive)文件,然后将其放入Tomcat的部署目录中。
基本上,Apache是一个HTTP服务器,提供HTTP服务。而Tomcat则是一个Servlet和JSP服务器,提供Java技术支持。
Tomcat包括Catalina,它是一个Servlet容器。最终,Servlet是一个Java类。JSP文件(类似于PHP和早期的ASP文件)会被生成为Java代码(HttpServlet),然后由服务器编译成.class文件,并由Java虚拟机执行。
httpd
Web服务器产品后面使用Tomcat的Servlet功能。 - Basil BourqueTomcat = (Web服务器+Servlet容器+JSP环境)
。当您运行Tomcat的 startup.sh
脚本时,默认情况下Web服务器会启动,并监听端口8080以获取传入连接(HTTP调用)。Tomcat是纯Java编写的,具有自己的Web服务器实现(Coyote)。相比之下, Apache HTTP Server (AHS) 有一个完全独立的Web服务器实现,使用本机C/C++代码。 AHS非常灵活和强大,但通常会过度使用。 Tomcat自己的Web服务器工作得非常好。只有在确实需要时才使用AHS。 - Basil Bourquemod_rewrite
引擎和条件环境注入。mod_proxy
提供了基本的负载均衡功能(与 mod_jk结合使用可以在负载平衡的Tomcat实例之间提供基本的粘性会话/共享状态)。 - cowbertTomcat主要是一个应用服务器,它会为您的服务器上的自定义Java Servlets或JSP文件提供请求服务。在我的经验中,通常与Apache HTTP服务器配合使用。使用它手动处理传入的请求。
HTTP服务器本身最适合提供静态内容... 如html文件、图像等。
Tomcat is primarily an application server
这个说法表示怀疑。 - RachelApache服务器是一种可以服务于任何简单HTTP请求的HTTP服务器,而Tomcat服务器实际上是一个可以服务于Java Servlet请求的Servlet容器。
Web服务器[Apache]处理Web客户端(Web浏览器)请求并将其转发到Servlet容器[Tomcat],容器处理请求并发送响应,Web服务器将响应转发给Web客户端[浏览器]。
此外,您可以通过以下链接获得更多澄清:
https://sites.google.com/site/sureshdevang/servlet-architecture
还可以查看此答案以进行进一步研究:
如果你正在使用Java技术(Servlet/JSP)制作Web应用程序,那么你可能会使用Apache Tomcat。 然而,如果你正在使用其他技术,如Perl、PHP或Ruby,最好(更容易)使用Apache HTTP服务器。
Apache是一个HTTP Web服务器,而Tomcat也是一个Servlet和JSP的Web服务器。此外,在实时环境中,Apache优于Apache Tomcat。
Apache是一个HTTP Web服务器,用作HTTP。
Apache Tomcat是一个Java Servlet容器。它具有与Web服务器相同的功能,但定制为执行Java Servlet和JSP页面。