web服务器/app应用服务器

服务器 专栏收录该内容
2 篇文章 0 订阅

web服务器:

一个web服务器就是一个服务器软件,或者一个硬件,它致力于运行我们所说的程序,可以满足万维网客户端的要求。一个服务器,大体上,包含着一个或者多个网页。
一个web服务器处理将来的网络请求通过Http和其他相关的协议。

一个web服务器就是取存储,处理,发送web页面给客户端。在客户端和服务器的交互之间,我们使用Http协议。大部分发送的页面是Html文档,它可以包含图片,样式表,和脚本额外添加到文本内容中。

一个用户代理,往往是一个web服务器,或者一个web爬虫,通过发起请求一个特定的资源通过http协议,然后服务器响应并给出客户索要的资源,如果不对获得,那么返回一个错误的信息。
一般来说,这样的一些资源是服务器上的真实文件,但这个情况不是必须的,这取决于web服务器的实现。

当主要的功能是服务于内容,一个完整的实现的Http包含着从客户端接受内容。这个特性用于提交表格,包括上传文件。

很多一般的web服务器也支持一些服务端脚本使用active Server Pages(asp),php(超文本 预处理器)或者其他脚本语言。这意味网页服务器的行为可以被脚本化在不同的文件,然而真实服务器软件没有改变。通常上,这个功能用来动态生成html文档(匆忙地)对比于返回的静态文件。前者主要用来检索或者修改信息从数据库,后者用来,更快更简单的缓存,但不能显示一个动态内容。

web服务器经常被发现在嵌入式设备中就像打印机,路由器中,只用于在局域网中。网页服务器可能作为系统监视或者管理的一部分在一个问题中,这通常意味着不需要在客户机上安装额外的软件,因为只需要一个web浏览器(现在大多数操作系统都包含web浏览器)。

内核模式和用户模式web服务器

一个web服务器既可以合并在系统内核中工作,也可以在用户空间(就像其他正常的应用)

web服务器运行在用户模式,必须向系统请求允许使用更多的内存和更多cpu资源。这种行为需要花费时间,而且因为系统为自己的使用保留了资源,并且有责任与所有其他正在运行的应用程序共享硬件资源。在用户模式下执行也意味着无用的缓冲区副本,这是用户模式web服务器的另一个障碍。

应用程序服务器(Application server)

一个应用程序服务器就是一个软件框架提供设备取创建一个web应用,和一个服务器环境去运行它们。
应用程序服务器框架包含了一个复杂的服务层次模型。一个应用程序作为一系列组建可以给软件开发者通过平台自己定义的标准api来实现。对于web程序,这些组件通常执行在相同的和web服务器一样的运行环境。然而,很多应用程序服务器实现目标超越了web服务器的范围,他们实现服务,比如集群、故障转移和负载平衡,因此开发人员可以专注于实现业务逻辑。
以java应用服务器为例子,服务器运行起来就像一个扩展的虚拟机去运行程序,透明地在异变去操作数据库链接,经常地,链接到web服务端在另一端。

其他项目的应用可能参考服务让一个服务器在计算机硬件上实现 。

应用程序服务器和web服务器

应用程序服务器(简称应用服务器): 我们先看一下微软对它的定义:“我们把应用程序服务器定义为“作为服务器执行共享业务应用程序的底层的系统软件”。 就像文件服务器为很多用户提供文件一样,应用程序服务器让多个用户可以同时使用应用程序(通常是客户创建的应用程序)”
然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods)。确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑 (business logic)。
以Java EE为例,Web服务器主要是处理静态页面处理和作为 Servlet容器,解释和执行servlet/JSP,而应用服务器是运行业务逻辑的,主要是EJB、 JNDI和JMX API等J2EE API方面的,还包含事务处理、数据库连接等功能,所以在企业级应用中,应用服务器提供的功能比WEB服务器强大的多。
Tomcat:早期的Tomcat是一个嵌入Apache内的JSP/Servlet解释引擎Apache+Tomcat就相当于IIS+ASP。后来的Tomcat已不再嵌入Apache内,Tomcat进程独立于Apache进程运行。 而且,Tomcat已经是一个独立的Servlet和JSP容器,业务逻辑层代码和界面交互层代码可以分离了。因此,有人把Tomcat叫做轻量级应用服务器。

IIS:微软早期的IIS,就是一个纯粹的Web服务器。后来,它嵌入了ASP引擎,可以解释VBScript和JScript服务器端代码了,这时,它就可以兼作应用服务器。当然,它与J2EE应用服务器根本无法相比,但是,从功能上说,从原理上说,它勉强可以称之为应用服务器。确切地说,它是兼有一点应用服务器功能的Web服务器。

  1. Apache和Tomcat是独立的,在通一台服务器上可以集成。

打个比方:Apache是一辆卡车,上面可以装一些东西如html等。但是不能装水,要装水必须要有容器(桶),Tomcat就是一个桶(装像Java这样的水),而这个桶也可以不放在卡车上。

Apache只支持静态网页,但像asp,php,cgi,jsp等动态网页就需要Tomcat来处理。

Apache和Tomcat整合使用:如果客户端请求的是静态页面,则只需要Apache服务器响应请求;如果客户端请求动态页面,则是Tomcat服务器响应请求;因为jsp是服务器端解释代码的,这样整合就可以减少Tomcat的服务开销 。

  • 1
    点赞
  • 0
    评论
  • 4
    收藏
  • 打赏
    打赏
  • 扫一扫,分享海报

©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

xiabe

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值