BS三层结构开发基础(课堂PPT)_第1页
BS三层结构开发基础(课堂PPT)_第2页
BS三层结构开发基础(课堂PPT)_第3页
BS三层结构开发基础(课堂PPT)_第4页
BS三层结构开发基础(课堂PPT)_第5页
已阅读5页,还剩18页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1B/S三层结构的特点三层结构的特点 2 研究的背景和目的研究的背景和目的 随着Internet的兴起和Web技术的发展,企业也开始考虑怎样更好的发挥网络应用的优势。而B/S作为目前比较理想的计算模式,成为了网站开发的首选结构。B/S三层结构将系统功能划分为4层: 第一层为人机界面,一般为基于HTML(ypertext Markup Language)的浏览器,通常以一些客户端控件或脚本技术来丰富用户界面。 第二层为业务规则层,一般由内嵌HTML网页的脚本和控件来处理。当然,浏览器并没有固定的规则,它们仅存在于网页之中。通常采用安全套接层SSL(Secure Sockets Layers)来减

2、少网络传输带来的风险。3 第三层由服务器来完成将业务数据向技术第三层由服务器来完成将业务数据向技术数据转换。这可能是由数据转换。这可能是由HTTP请求来触发一段请求来触发一段程序来产生结构化数据,或由程序来产生结构化数据,或由ASP(Active Server Pages)来完成这一任务。)来完成这一任务。 第四层为应用服务器,该层处理和产生最第四层为应用服务器,该层处理和产生最后的结果。这部分可以是数据库或其他业务对后的结果。这部分可以是数据库或其他业务对象,处理结果是将信息发往浏览器或者存储由象,处理结果是将信息发往浏览器或者存储由浏览器发来的信息。浏览器发来的信息。 由以上的功能划分可知

3、,在由以上的功能划分可知,在B/S模式中,模式中,第一、第二层位于浏览器端,而服务器端包含第一、第二层位于浏览器端,而服务器端包含第三、第四层。由于系统的相对集中性,使得第三、第四层。由于系统的相对集中性,使得系统的维护和扩展变得更加容易。在实际应用系统的维护和扩展变得更加容易。在实际应用中,为提高数据的处理功能又往往将服务器划中,为提高数据的处理功能又往往将服务器划分为一个分为一个Web服务器和一个或多个数据库服务服务器和一个或多个数据库服务器,构成所谓的器,构成所谓的B/S三层结构。三层结构。4 第一层是表现层,主要完成用户和后第一层是表现层,主要完成用户和后台的交互及最终查询结果的输出功

4、能。台的交互及最终查询结果的输出功能。第二层是逻辑层,主要利用服务器完成第二层是逻辑层,主要利用服务器完成客户客户 的应用逻辑功能。第三层是数据的应用逻辑功能。第三层是数据层,主要接受客户请求后独层,主要接受客户请求后独 立的进行各种运算。立的进行各种运算。 B/S三层结构在软、硬件环境发生变化三层结构在软、硬件环境发生变化时的适应能力比其他结构强的多,具有时的适应能力比其他结构强的多,具有更强的可伸缩性。更强的可伸缩性。5B/S三层结构的产生三层结构的产生 最早的数据库应用是在一台主机上进行的。它的基本思想是在计算机上建立一个或多个应用程序,然后对本机上的文件系统进行操作。这种思想随着计算机

5、网络的出现,就显得力不从心了。 网络的出现给计算机的应用带来的一次重大的改革,为了适应网络环境下对数据的组织管理,人们依据计算机应用特点和应用功能的划分方式,提出了一系列应用框架。61.终端终端/主机结构(主机结构(Terminal/Mainframe) 80年代以前,在个人电脑尚未问世时年代以前,在个人电脑尚未问世时,以,以IBM主机系统为代表的终端主机系统为代表的终端/主机模式主机模式成为当时的主流。在当时而言,此类结构成为当时的主流。在当时而言,此类结构能够使资源得到充分共享。不过,随着个能够使资源得到充分共享。不过,随着个人电脑的风靡,终端人电脑的风靡,终端/主机结构的缺点也逐主机结构

6、的缺点也逐步曝露出来:结构层次的单一性,用户界步曝露出来:结构层次的单一性,用户界面的友好性差,主机负载过大,而且终端面的友好性差,主机负载过大,而且终端是以菜单驱动的方式来访问主机的是以菜单驱动的方式来访问主机的.(见图(见图2-1)。)。7菜单驱动菜单驱动终端字符终端字符终端主机主机包含应用程序和数据库。图图2-1 终端终端/主机结构主机结构82文件服务器结构文件服务器结构 为了改变终端为了改变终端/主机模式中主机负载过大的缺主机模式中主机负载过大的缺点,点,文件服务器模式文件服务器模式被提了出来。被提了出来。 此类模式此类模式将应用程序从主机转移到了客户端将应用程序从主机转移到了客户端,

7、只保留了数据库而且是一个单一的数据文件只保留了数据库而且是一个单一的数据文件在服务器上在服务器上。 基于文件服务器结构的系统,数据库引擎在基于文件服务器结构的系统,数据库引擎在客户机上运行,紧紧地联系着客户应用程序。客户机上运行,紧紧地联系着客户应用程序。 当用户要求该引擎执行当用户要求该引擎执行SQL语句时,该引擎语句时,该引擎用标准文件读写操作命令在网络上搜索数据文用标准文件读写操作命令在网络上搜索数据文件,然后将整个表文件通过磁盘件,然后将整个表文件通过磁盘I/O请求的方式请求的方式由网络传递给客户端,具体结构如图由网络传递给客户端,具体结构如图2-2。9磁盘请求磁盘请求表文件表文件客户

8、机客户机服务器服务器包含数据包含应用程序图图2-2 基于文件服务器结构的系统基于文件服务器结构的系统103客户端客户端/服务器结构(服务器结构(Client/Server) 90年代后,年代后,Client/Server结构(简称结构(简称C/S)逐渐成为计算技术领域中新的主流。)逐渐成为计算技术领域中新的主流。 传统的传统的C/S结构从客户机到服务器外分为结构从客户机到服务器外分为四层:四层:Data Capture、Business Rules、Application Interface、Application Server。 它通过在客户和服务器之间划分各自所它通过在客户和服务器之间划分

9、各自所包括的层次,来提高应用端的计算效率。于包括的层次,来提高应用端的计算效率。于是,主机要做的部分工作被转移到了客户机是,主机要做的部分工作被转移到了客户机上,原来完全放在主机上的应用程序被划分上,原来完全放在主机上的应用程序被划分成了客户端的应用程序和服务器端的应用程成了客户端的应用程序和服务器端的应用程序,即所谓的两层结构,如图序,即所谓的两层结构,如图2-3。11用户界面数据库SQL请求请求结果集图2-3 Client/Server结构包含数据ServerClient包 含 应 用程序124浏览器浏览器/服务器三层结构服务器三层结构(Browser/Server) 现今,对于三层结构的

10、定义还有分歧,有观现今,对于三层结构的定义还有分歧,有观点认为:三层结构是点认为:三层结构是C/S结构的一种,只不过将原结构的一种,只不过将原来客户端承担的商业和应用逻辑转移到了中间层来客户端承担的商业和应用逻辑转移到了中间层;也有观点认为:;也有观点认为:B/S才是三层结构,即由浏览器才是三层结构,即由浏览器作为客户端,作为客户端,Web服务器为中间层。服务器为中间层。 对于三层结构的理解应该从逻辑的层面来分析对于三层结构的理解应该从逻辑的层面来分析,凡是由表示层、逻辑层、数据层组成的,无关,凡是由表示层、逻辑层、数据层组成的,无关其物理结构,都属于三层结构,如图其物理结构,都属于三层结构,

11、如图2-4。 简而言之,三层是指逻辑上的三层,即便这三简而言之,三层是指逻辑上的三层,即便这三个层是被放置在同一台机器上的。个层是被放置在同一台机器上的。13用 户用 户界面界面层层逻 辑逻 辑处理处理层层数 据数 据中 心中 心层层 图图2-4 Browser/Server结构结构WebServer浏览器浏览器数据库服务器数据库服务器14B/S三层结构三层结构:第一层第一层: 表现层,负责与用户的交互。表现层,负责与用户的交互。 客户端向由客户端向由URL(Uniform Resource Locator,统一资源定位器)所指定的,统一资源定位器)所指定的Web服务服务器提出申请,器提出申请

12、,Web服务器用服务器用HTTP协议把所需的协议把所需的文件资料传给用户,客户端接收文件信息并在浏文件资料传给用户,客户端接收文件信息并在浏览器上输出。览器上输出。第二层第二层: 逻辑层,负责接受浏览器端的请求,然逻辑层,负责接受浏览器端的请求,然后经过处理将这个请求转化为数据库请求后与数后经过处理将这个请求转化为数据库请求后与数据库服务器交互,并将数据库服务器交互结果传据库服务器交互,并将数据库服务器交互结果传送给浏览器端。送给浏览器端。15第三层第三层: 数据层,系统的数据中心。数据层,系统的数据中心。 一般数据层都由一般数据层都由Database Management System(DB

13、MS)组成,一)组成,一个应用系统对应由个应用系统对应由DBMS管理的一个或管理的一个或多个数据库。多个数据库。 数据库由表、索引、存储过程、触发数据库由表、索引、存储过程、触发器等对象组成。数据层还可以由文件系器等对象组成。数据层还可以由文件系统或非关系型数据库等组成。统或非关系型数据库等组成。16Browser/Server三层结构是在三层结构是在Internet和和Intranet发展的基础上,由发展的基础上,由Client/Server结构结构发展来的一种新型结构,是目前最先进的体系发展来的一种新型结构,是目前最先进的体系结构,如图结构,如图2-5。BrowserBrowserWeb

14、ServerBrowserDB Server页面请求页面请求页面响应页面响应数据结果数据结果数据请求数据请求图2-5 Browser/Server三层结构三层结构17 B/S结构的核心部分是结构的核心部分是Web Server,它接受远,它接受远程或本地的程或本地的HTTP查询请求,然后根据查询的条查询请求,然后根据查询的条件到数据库服务器获取相关数据,再将结果以件到数据库服务器获取相关数据,再将结果以HTML和各种和各种Script语言的方式传送回原先提出查语言的方式传送回原先提出查询请求的浏览器。询请求的浏览器。 对于浏览器和对于浏览器和Web服务器的关系,则可以认服务器的关系,则可以认为

15、是一种动态的为是一种动态的HTML技术。早期的浏览器获取技术。早期的浏览器获取的的HTML是固定不变的,而在是固定不变的,而在B/S三层结构下,每三层结构下,每次浏览器提出的申请不同,次浏览器提出的申请不同,Web服务器就根据不服务器就根据不同的申请重新同的申请重新“书写书写”一遍一遍HTML,这样客户端,这样客户端就间接获得了数据库服务器的数据。同样,用户就间接获得了数据库服务器的数据。同样,用户如果需要修改、添加、删除数据,浏览器就会把如果需要修改、添加、删除数据,浏览器就会把更新数据的请求包含在更新数据的请求包含在HTTP请求中,由请求中,由Web服务服务器告知数据库服务器,完成相应的更

16、改工作。器告知数据库服务器,完成相应的更改工作。18两层与三层结构的比较两层与三层结构的比较两层结构的优点:两层结构的优点:系统结构简单。前期设系统结构简单。前期设计少,开发周期短,能够快速实现。运行计少,开发周期短,能够快速实现。运行环境相对简单环境相对简单.两层结构的缺点:两层结构的缺点:更新升级难以实现。更新升级难以实现。随着应用业务逻辑或数据库的改变,所有随着应用业务逻辑或数据库的改变,所有客户端都需要同时进行更新升级,而这种客户端都需要同时进行更新升级,而这种升级往往难以实现,尤其是分布于不同地升级往往难以实现,尤其是分布于不同地域的客户端,这很不利于应用程序的扩展域的客户端,这很不

17、利于应用程序的扩展。容易造成客户端瓶颈。容易造成客户端瓶颈。19由于应用程序是驻留在客户端的,当访问由于应用程序是驻留在客户端的,当访问数据量剧增和业务逻辑变得更为复杂时,数据量剧增和业务逻辑变得更为复杂时,容易造成客户端瓶颈,而且这与现今提倡容易造成客户端瓶颈,而且这与现今提倡的瘦客户端的发展趋势不相符。的瘦客户端的发展趋势不相符。容易造成网络瓶颈。容易造成网络瓶颈。客户端与后台数据库服务器的数据交换过客户端与后台数据库服务器的数据交换过于频繁,一旦数据量过大,或并行访问的于频繁,一旦数据量过大,或并行访问的客户端不断增多时,容易造成网络上的瓶客户端不断增多时,容易造成网络上的瓶颈。颈。安全

18、性难以保证。安全性难以保证。对于不同的用户不能明确地限定各自权限,对于不同的用户不能明确地限定各自权限,容易造成数据库安全性的降低。容易造成数据库安全性的降低。20三层结构的优点:三层结构的优点:具有灵活的硬件构成。具有灵活的硬件构成。 对于各个层次可以选用与其处理负荷、处理特性相对于各个层次可以选用与其处理负荷、处理特性相匹配的硬件。当业务扩大,用户数增多的情况下,可匹配的硬件。当业务扩大,用户数增多的情况下,可以追加应用服务器的数量,用以分割数据库。以追加应用服务器的数量,用以分割数据库。提高程序的可维护性。提高程序的可维护性。 各个层次可并行开发,也可以选择各自适合的开发各个层次可并行开

19、发,也可以选择各自适合的开发语言。语言。利于变更和维护应用技术规范。利于变更和维护应用技术规范。 因为三个层次是按功能分割的,所以各个程序的处因为三个层次是按功能分割的,所以各个程序的处理逻辑十分简单。理逻辑十分简单。进行严密的安全管理。进行严密的安全管理。 三层结构中,识别用户的机构是按层来构筑的,对三层结构中,识别用户的机构是按层来构筑的,对应用和数据的存取权限也可以按层进行设定。例如,应用和数据的存取权限也可以按层进行设定。例如,外部入侵者突破了表示层的安全防线,若在逻辑层中外部入侵者突破了表示层的安全防线,若在逻辑层中另外备有安全机构,系统也可以阻止入侵者进入其它另外备有安全机构,系统

20、也可以阻止入侵者进入其它部分。部分。21对于B/S与C/S三层结构的比较,可以从以下3点进行分析:简化了客户端。 B/S无需像C/S那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件。这样不但可以节省客户机的硬盘空间与内存,而且使安装过程更加简便、网络结构更加灵活。简化了系统的开发和维护。 系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。Browser/Server与与Client/Server的比较的比较22各个用户通过各个用户通过HTTP请求在权限范围内调用请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据服务器上不同处理程序,从而完成对数据的查询或修改。的查询或修改。 相对于相对于C/S,B/S的维护具有更大的灵活的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对客户应用程序升级,而只需对Web服务器上的服务器上的服务处理程序进行修订。如果一个系统有上千服务处理程序进行修订。如果一个系统有上千台的客户机,并且分布在不同的地点,那么便台的客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。于维护将会显得更加重要。简化了用户的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论