2010-12-01 278 views

回答

4

实际上,几乎没有什么区别,大多数人可以互换使用这个术语。

的细微差别对我来说是:

  • Web服务器提供网页和静态内容。不是动态内容。

  • 应用程序服务器可以是一个Web服务器(具有动态内容),尽管它可能根本没有。它为程序员提供了一个API。

像往常一样,维基百科定义了最好的。

Web server

的计算机应用程序,帮助提供可通过互联网访问的内容。

Application server

应用服务器是专门为程序(程序,例程,脚本)的执行效率支持的应用建设一个软件框架。

...

的应用服务器作为通过该平台本身定义的API了一套软件开发人员访问组件。

0

基本上,服务器只是计算机正在执行的任务。服务器不是机器的名称(尽管通常称它为服务器)。所以一台机器可以作为Web服务器,应用服务器等。

Web服务器意味着服务器正在提供Web内容(HTML,PHP等)。典型的服务器软件是Apache或IIS。

应用程序服务器是一个更通用的术语。根据定义,Web服务器也是应用服务器(Apache软件是应用程序)。但是应用服务器不限于提供网页内容。

我希望这不是太混乱;-)

0

“Web服务器” 意味着HTTP(和最有可能的HTML); “应用程序服务器”可以是任何协议。

甚至没有这种区别是100%,超出这个区别是火焰战争的领土和争论的语义。

1

应用程序服务器是任何应用程序级协议上的任何服务器。

HTTP是应用程序级别的协议,因此Web服务器是应用程序服务器。应用程序服务器也可以使用完全不同的协议。

但是,如果Web服务器被称为运行“Web应用程序”,这通常意味着某种(任意)复杂程度的“动态”内容,则Web服务器可能只称为应用程序服务器。这在技术上是无稽之谈,因为所有的HTTP都在应用程序级别上(并且在外部是黑匣子,所以无论它来自“静态”内容还是“动态”内容都是不相关的)。

尽管如此,部分原因还是因为有些人仍然将HTTP视为某种传输协议,并期望应用程序“处于顶层”,但主要是为了让营销人员暗示存在某种类型的应用程序做出有意义的区分,你应该投资他们的“应用服务器”而不是网络服务器。

0

如果您的问题来自Java域,应用服务器是一个完全符合服务器J2EE规范,提供所有相关的功能(如Glassfish的,JBoss的,的WebLogic)
在另一方面,一个Web服务器只是轻量的服务器没有完全实现J2EE规范(如Apache Tomcat上)

0

Web服务器:

  • 的Apache,IIS,Nginx的,李ghttpd等

它们可以通过与 INTERFACING生成动态内容就像一个CGI后端,PHP,.NET的Lua等通过CGI,FastCGI的,SCGI,模块等

应用

Web应用程序服务器:

  • 的Tomcat/JBoss的/ GlassFish的/的WebSphere(爪哇脚本) G-WAN(ANSI C脚本)等

他们通过在上面的示例中使用像Java或C脚本 这样的INTEGRATED脚本引擎自然生成动态内容。

应用服务器通常更快,因为它们不需要承受服务器和脚本引擎之间的接口 的开销。

相关问题