Web应用程序

Web应用程序就如Webmail,博客,网页游戏,购物网站等不需要在电脑安装客户端的程序。实际上,它本身就是一种n层方法 (多层架构) 的体现,一般基本分为3层:从高到低为:表示层,应用程序层和数据层 。

1. 表示层

表示层显示与如浏览商品,购买和购物车内容等服务有关的信息。 简而言之,它是一个用户可以直接访问的层(例如网页或操作系统的GUI)。

2. 应用程序层(业务逻辑,逻辑层或中间层)

通过服务器端脚本(如 PHP, Python, Perl, Java, Ruby 等 )来实现整个应用程序的功能。

3. 数据层

存储与数据管理。数据层为应用程序层提供一个API,然后交互。

浏览器发送不是简单读取静态文件的HTTP请求,而是带有参数的HTTP请求到应用程序层,它通过使查询和更新对数据库服务他们,并生成用户界面。

PS. 注意这里并不是 Web 服务器本身来做这件事,它本身只负责 HTTP 协议层面和一些诸如并发处理,安全,日志等相关的事情,

而Web应用程序根据 Request 生成相应的 Response。

4. 类比小例子

1) 无参数请求

假设我要去一家餐厅吃饭,问服务员要个菜单,服务员到前台给我拿了个菜单,我看着菜单。

这个过程中,“我”是客户端,“问要菜单”是一个类似于读取文件的HTTP请求,“服务员”是一个媒介, “服务员到前台给我拿了个菜单”是来自服务器的HTTP响应, ‘我看到的菜单"是客户端得到的结果。

2) 带参数请求

假设我看着菜单,告诉服务员我要炒饭,服务员到厨房告诉厨师,厨师从仓库拿出食材,然后做炒饭,之后服务员端着炒饭给我。

“我要炒饭”是一个带有参数的HTTP请求,请求通过服务员(媒介)传到“厨房”。"厨房"是应用程序层, “厨师”是脚本, “仓库”是数据层中的数据库, “食材”是数据,“炒饭”是"厨师"(脚本)处理的结果,然后“炒饭”通过“服务员”带给“我”。

最后更新于

这有帮助吗?