这是一个详细的答案,并给出了一些方案,以清楚地理解两者之间的区别、相似之处以及两者是如何结合工作的。
应用服务器是一个有时与Web服务器..而web服务器主要处理HTTP协议,应用程序服务器处理几种不同的协议,包括,但是不限于HTTP.
Web服务器的主要工作是显示网站内容应用服务器是负责逻辑,用户与显示的内容之间的交互。应用服务器是协同工作与Web服务器,其中一个显示和另一个交互。
在服务器和客户端之间来回传输的信息不限于简单的显示标记,而是两者之间的交互。
在大多数情况下,服务器会创建以下内容通过组件API进行交互,如J2EE(Java 2平台), EJB(企业JavaBean)以及其他不同的应用软件模型。
例如:
了解应用程序服务器与没有应用服务器的场景之间的区别的最好方法是通过在线商店。
场景1:没有应用服务器的Web服务器
您有一个只有Web服务器而没有应用服务器的在线商店。该网站将提供一个显示,您可以从中选择一个产品。提交查询时,站点执行查找并将HTML结果返回给其客户端。Web服务器将您的查询直接发送到数据库服务器(请耐心,我将在下一个单元中解释这个查询),并等待响应。一旦收到,Web服务器就会将响应公式化为HTML文件,并将其发送给您的Web浏览器。每次运行查询时,服务器和数据库服务器之间的来回通信都会发生。
场景2:带有应用服务器的Web服务器
如果您想要运行的查询已经完成,而且此后没有数据更改,服务器将生成结果,而不必将请求发送到数据库服务器。这允许实时查询,第二个客户端可以访问相同的信息并接收实时、可靠的信息,而无需向数据库服务器发送另一个重复的查询。服务器基本上充当数据库服务器和Web服务器之间的中间层。这允许在第一个场景中提取的信息是可重用的,因为这个信息嵌入在一个特定的“自定义”HTML页面中,这不是一个可重用的过程。第二个客户端将不得不再次请求信息,并接收另一个HTML嵌入页面与所要求的信息-效率很低。更不用说这种类型的服务器非常灵活,因为它能够管理自己的资源,包括安全、事务处理、消息传递和资源池。
为了支持如此复杂的任务,这个服务器必须具有内置的冗余、强大的处理能力和大量的RAM来实时处理所有的数据。
希望这能帮上忙。