广义的web服务:以HTTP形式对外提供响应的服务。例如:w3服务、XML-RPC、WebService、REST。
两种狭义的web服务:WebService、w3服务
web服务器
广义的web服务器:提供广义web服务的软件或主机
狭义的web服务器(Web Server):提供w3服务的软件或主机,即Web服务器软件或装有Web服务器软件的计算机。例如:IIS、Apache、nginx、Lighttpd。Web服务器可以处理 HTTP 协议,响应针对静态页面或图片的请求,进行页面跳转,或者把动态请求委托其它程序(它的扩展、某种语言的解释引擎、Web容器)。
web服务器用于提供http服务,即向客户端返回信息,其可以处理HTTP协议,响应针对静态页面或图片的请求,控制页面跳转,或者把动态请求委托其它程序(中间件程序)等。
服务器,容器,中间件
一次web访问的顺序:web浏览器-》web服务器(狭义)-》web容器-》应用服务器-》数据库服务器
概念范围:容器 》Web容器,中间件 》应用服务器,容器是中间件的组成部分。
容器:作为操作系统和应用程序之间的桥梁,给处于其中的应用程序组件提供一个环境,使应用程序直接跟容器中的环境变量交互,不必关注其它系统问题。例如:tomcat(拥有JSP容器,servlet容器),Jboss(拥有EJB容器)。
web容器:处理http的容器,例如tomcat(拥有JSP容器,servlet容器),IIS(拥有ASP容器)。web容器用于给处于其中的应用程序组件(JSP,SERVLET)提供一个环境,是中间件的一个组成部分,它实现了对动态语言的解析。比如tomcat可以解析jsp,是因为其内部有一个jsp容器。
所属的类别
web服务器:IIS、Apache、nginx、tomcat、weblogic、websphere等。
web中间件:apache tomcat、BEA WebLogic、IBM WebSphere等。
web容器:JSP容器、SERVLET容器、ASP容器等。
中间件:为一种或多种应用程序提供容器,同时为应用程序提供相关服务。web中间件用于提供系统软件和应用软件之间的连接,以便于软件各部件之间的沟通,其可以为一种或多种应用程序提供容器。
应用服务器(Application Server):用于被其他应用服务器或web服务器调用的中间件。例如Tomcat,WebLogic,WebSphere,Jboss。
多重身份:IIS,Tomcat,WebLogic,WebSphere即是应用服务器,又拥有web服务器的功能。tomcat可以单独运行也可以被集成到Apache中,Apache处理静态文件比Tomcat快。