Web系统体系结构
1.1 Web系统体系结构
了解结构是我们学习很多课程非常重要的方法。
Web应用项目本身是一种软件系统,它也是具有自身结构的,即系统体系结构。有一门课程《软件体系结构》会专门研究这个问题。
系统体系结构是一个综合各种观点的模型,用来完整描述整个系统,通过系统体系结构就能够了解一个软件系统的基本架构。常见的系统体系结构有C/S结构和B/S结构。
1、C/S(即Client/Server)结构
首先,了解一下C/S的工作流程,Server端存储了各种资源,我们在Client端通过网络发送资源请求,接收并显示Server端响应的内容。如下图所示:
浏览Web内容是Internet提供的主要服务,它以HTTP协议(HyperText Transfer Protocol)在网上传送以HTML(Hyper Text Markup Language)语言编写的网页内容,从而进行信息交流。
它的具体工作步骤如下:
☆ 通过客户端浏览器输入URL向WEB服务器发出服务请求;
☆ 服务器解析浏览器请求的URL,找到相应的网页文件;
☆ 网页中包含JavaScript等脚本,它将随HTML文档一起下载到客户端;若网页中嵌套有ASP等程序,服务器将执行这些程序并将运行结果以HTML标记形式发送给客户端;
☆ 浏览器解释HTML文档,并显示结果。
超文本传输协议(HTTP)是WEB浏览器与WEB服务器应用层之间的通信协议。HTTP会话过程包括4个步骤:
☆建立链接(connection);
☆发送请求(request);
☆响应请求(response);
☆关闭链接(close)。
在C/S结构下,不同的服务需要安装不同的客户端软件,进而占用非常多的系统资源。除此之外它还有其它一些弊端,比如A需要在B电脑上处理文件,但B电脑并未安装类似的软件,这样得先去下载,非常不方便,并且软件升级后也需要重新下载。因此,需要有新的方法来解决该问题,于是就有了新的B/S结构。
2、B/S(即Broswer/Server)结构
B/S结构就是浏览器/服务器结构,它解决了C/S结构所带来的不便,能够将所有的服务(如QQ、邮件等)都通过浏览器来完成。由于操作系统通常都安装了某款浏览器,这样可以更多的节省系统资源。同时,各种服务软件功能的升级也无需重新下载,只要刷新网页即可。但B/S也存在一些不足,比如操作的稳定性、流畅度等方面相对较弱,并严重依赖网络的状况。
在讲解了C/S架构和B/S架构之后,为了让大家更加清楚它们各自的特点,下面对它们做对比说明,如表所示。
请思考:C/S和B/S的关系是怎样的呢?B/S的工作流程又是怎样的呢?
提示:二者的工作流程基本一致,B/S首先是C/S。