每天进步一丢丢,连接梦与想
我们经常使用apache,tomcat,nginx,jetty等服务器,但并不清楚它们间的区别,它们中,哪些是Web服务器,哪些是应用服务器?今天就来告诉你
Web服务器
理解WEB服务器,首先你要理解什么是WEB? WEB表现为三种形式,即超文本(hypertext)、超媒体(hypermedia)和超文本传输协议(HTTP)。
你可以简单理解为你所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS、apache,nginx等。
WEB服务器与客户端打交道,它要处理的主要信息有:session、request、response、HTML、JS、CS等。
应用服务器
提供处理逻辑的应用容器,这里的应用很多,如果java应用、C#应用、ruby应用等。应用服务器提供访问商业逻辑的途径以供客户端应用程序使用。
Web服务器和应用服务器的关系
WEB服务器一般是通用的,而应用服务器一般是专用的,如Tomcat只处理JAVA应用程序而不能处理ASPX或PHP。而Apache是一个WEB服务器(HTTP服务器),他的信息源可以是配置在tomcat中的JAVA应用,也可以是ASPX应用。
Web服务器只负责处理HTTP协议,只能发送静态页面的内容。而JSP,ASP,PHP等动态内容需要通过CGI、FastCGI、ISAPI等接口交给其他程序去处理。这个其他程序就是应用服务器。
常用的web服务器: Apache、IIS、Nginx、Tomcat等
常用的应用服务器: Tomcat、Jetty、Weblogic等
有的应用服务器也提供http服务,如Tomcat,所以可以说,Tomcat是web服务器也是应用服务器