web服务器和应用服务器的区别
Web服务器和应用服务器的主要区别在于它们处理的请求类型和功能:
1. 请求处理:Web服务器主要负责处理HTTP协议,只能发送静态页面的内容。而应用服务器则负责处理动态内容,如JSP,ASP,PHP等,这些动态内容需要通过CGI、FastCGI、ISAPI等接口交给其他程序去处理。应用服务器通过多种协议为应用程序提供商业逻辑。
2. 响应内容:Web服务器在接收到一个HTTP请求时,会返回一个HTTP响应,例如送回一个HTML页面。而应用服务器在处理请求时,可能会产生一个HTML的响应来让浏览器可以浏览。
3. 功能支持:Web服务器可能不支持事务处理或数据库连接池,但它可以配置各种策略来实现容错性和可扩展性,例如负载平衡,缓冲等。而应用服务器则支持事务处理、数据库连接等功能。
需要注意的是,应用服务器的HTTP协议部分仅仅是支持,一般不会做特别优化,所以很少有见Tomcat直接暴露给外面,而是和Nginx、Apache等配合,只让Tomcat处理JSP和Servlet部分。