C/S架构和B/S架构

Posted 沐一

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C/S架构和B/S架构相关的知识,希望对你有一定的参考价值。

本文内容整理自http://blog.csdn.net/tennysonsky/article/details/45062079

C/S架构和B/S架构是两种颇具影响力的软件体系结构。C/S是一种历史悠久且技术非常成熟的架构;B/S是新生代架构,从C/S派生出来,有很多创新,在web信息时代虎虎生威。

一、C/S架构

一直很流行并且比较经典的是我们要研究的两层C/S架构。

C/S架构分为客户机和服务器两层,第一层是用户表示层,第二层是数据库层。

客户端和服务器直接相连,这两个组成部分都承担着重要的角色。第一层的客户机并不是只有输入输出,运算等能力,它可以处理一些计算、数据存储等方面的业务逻辑事务;第二层的服务器主要承担事务逻辑处理,本来事务很重,但是由于客户机可以分担一些逻辑事务,所以减轻了服务器的负担。

二、B/S架构

随着Internet和WWW的流行,以往的主机/终端和C/S都无法满足当前的全球网络开放、互连、信息随处可见和信息共享的新要求,于是就出现了B/S型模式,即浏览器/服务器结构。它是C/S架构的一种改进,可以说属于三层C/S架构。

客户机

表示层:用于界面引导,接受用户输入,

并向应用服务器发送服务请求,显示处理结果。

 

应用服务器

业务逻辑层:执行业务逻辑,向数据库发送请求。

数据库服务器

数据存储层:执行数据逻辑,运行SQL或存储过程。

第一层是浏览器,即客户端,只有简单的输入输出功能,处理极少部分的事务逻辑。由于客户不需要安装客户端,只要有浏览器就能上网浏览,所以它面向的是大范围的用户,所以界面设计得比较简单,通用。

第二层是WEB服务器,扮演着信息传送的角色。当用户想要访问数据库时,就会首先向WEB服务器发送请求,WEB服务器同意请求后,会向数据库服务器发送访问数据库的请求,这个请求是以SQL语句实现的。

第三层是数据库服务器,它扮演着重要的角色,因为它存放着大量的数据。当数据库服务器收到了WEB服务器的请求后,会对sql语句进行处理,并将返回的结果发送给WEB服务器,接下来,WEB服务器将收到的数据结果转换为html文本形式发送给浏览器,也就是我们打开浏览器看到的界面。

三、C/S架构和B/S架构的比较

比较项目 C/S架构 B/S架构
网络环境 局域网 广域网
安全要求

面向相对固定的用户群,

信息安全的控制能力很强

面向的是不可知的用户群,

对安全的控制能力相对弱

逻辑事务处理

客户端和服务端各承担一部分逻辑事务处理

客户端只能进行简单的输入和输出和信息发布共享功能,主要的逻辑事务处理还是要靠服务器

响应速度

快,尤其是用户增加时更加明显

软件重用
系统维护 升级难 方便升级
用户接口 与操作系统关系密切 跨平台,与浏览器相关
数据库连接类型

ODBC连接,只要用户连接了数据库就一直保持连接不会断开

限制了用户数

JDBC连接,用户并不保持对数据库的连接,所以用户几乎是无限的
功能 较复杂,能够实现单一的复杂功能,现在大多数大型的ERP系统仍然是C/S架构 较弱,处理的事务逻辑较少,但界面比较通用
对技术人员的要求 较高 较低

以上是关于C/S架构和B/S架构的主要内容,如果未能解决你的问题,请参考以下文章

深入理解B/S与C/S架构

B/S架构与C/S架构的比较

C/S 架构 和 B/S 架构

01_C/S架构和B/S架构

B/S架构 C/S架构 SOA架构

B/S 和 C/S 架构软件