比较C/S、B/S架构之间的区别(原理、优缺点、适用范围)以及主流的Web程序应用平台、Web工作原理

C/S与B/S的原理

C/S 架构是一种典型的两层架构,其全程是Client/Server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。
C/S 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。

B/S架构的全称为Browser/Server,即浏览器/服务器结构。Browser指的是Web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,Browser客户端,WebApp服务器端和DB端构成所谓的三层架构。B/S架构的系统无须特别安装,只有Web浏览器即可。
B/S架构中,显示逻辑交给了Web浏览器,事务处理逻辑在放在了WebApp上,这样就避免了庞大的胖客户端,减少了客户端的压力。因为客户端包含的逻辑很少,因此也被成为瘦客户端。
比较C/S、B/S架构之间的区别(原理、优缺点、适用范围)以及主流的Web程序应用平台、Web工作原理_第1张图片

C/S与B/S的优缺点

B/S结构的优点:

1)具有分布性特点,可以随时随地进行查询、浏览等业务处理。
2)业务扩展简单方便,通过增加页面即可增加服务器功能。
3)维护简单方便,只需要改变网面,即可实现所有用户的同步更新。
4)共享性强

B/S 模式的缺点:

1)响应速度不及C/S,随着AJAX技术的发展,相比传统B/S结构软件提升一倍速度。
2)用户体验效果不是很理想,B/S需要单独界面设计,厂商之间的界面也是千差万别,由于浏览器刷新机制,使用时有刷屏现象,好在AJAX技术解决这一难题,像用友,智赢等开发的B/S架构软件用户体验效果与C/S差不多。

C/S 模式的优点和缺点

C/S 模式的优点:

1)由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度较快。
2)C/S结构的管理信息系统具有较强的事务处理能力。

C/S 模式的缺点:

1)只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门
的设计来处理分布式的数据。
2)客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,
不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。
3)对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于win2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。

C/S与B/S的适用范围(区别)

Client/Server是建立在局域网的基础上的,Browser/Server是建立在广域网的基础上的。
(1)、硬件环境不同:
C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。
B/S建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比C/S更强的适应范围,一般只要有操作系统和浏览器就行。
(2)、对安全要求不同:
C/S一般面向相对固定的用户群,对信息安全的控制能力很强,对服务端、客户端安全都要考虑。
B/S建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群,因没有客户端 ,所以只注重服务端安全即可。
(3)、对程序架构不同:
C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。
B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。比C/S有更高的要求,B/S结构的程序架构是发展的趋势,从MS的.Net系列的BizTalk2000Exchange2000等,全面支持网络的构件搭建的系统。SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。
(4)、软件重用不同
C/S程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。
B/S对的多重结构,要求构件相对独立的功能。能够相对较好的重用。就如买来的餐桌可以再利用,而不是做在墙上的石头桌子。
(5)、系统维护不同
系统维护是软件生存周期中,开销大,相当重要
C/S程序由于整体性,必须整体考察,处理出现的问题以及系统升级难,可能是再做一个全新的系统。
B/S构件组成方面构件个别的更换,实现系统的无缝升级。系统维护开销减到最小,用户从网上自己下载安装就可以实现升级。
(6)、处理问题不同
C/S程序可以处理用户面固定,并且在相同区域,安全要求高的需求,与操作系统相关,应该都是相同的系统。
B/S建立在广域网上,面向不同的用户群,分散地域,这是C/S无法作到的,与操作系统平台关系最小。
(7)、用户接口不同
C/S多是建立在Window平台上,表现方法有限,对程序员普遍要求较高。
B/S建立在浏览器上,有更加丰富和生动的表现方式与用户交流,并且大部分难度减低,降低开发成本。
(8)、信息流不同
C/S程序一般是典型的中央集权的机械式处理,交互性相对低。
B/S信息流向可变化,B-B、B-C、B-G等信息流向的变化,更象交易中心。

主流的Web程序应用平台

一个动态网站服务器平台至少要包括:操作系统+Web服务器+应用程序服务+数据库。一个优秀的网站服务器是由多方面因素决定的,如个人喜好、部署费用、安全机制等。而现在主流的三种Web平台:LAMP、JavaEE和ASP.NET各有优缺点,以满足不同的需要和用户。三者比较如下:

性能比较 LAMP J2EE ASP.NET
运行速度 较快
开发速度 一般
运行耗损 一般 较小 较大
难易程度 简单 简单
运行平台 Linux/UINX/Windows平台 绝大多数平台均可 Windows平台
扩展性 较差
安全性 较差
应用程度 较广 较广 较广
建设成本 非常低 非常高

三种平台的各部分组合:

ASP.NET:Windows Server+IIS+SQL Server+ASP

JavaEE:UNIX+Tomcat+Oracle+JSP

LAMP:Linux+Apache+MySQL+PHP

三张图告诉你Web工作原理

1、服务器不带应用程序和数据库,直接请求HTML文件
比较C/S、B/S架构之间的区别(原理、优缺点、适用范围)以及主流的Web程序应用平台、Web工作原理_第2张图片
2、服务器带应用程序(如php)
比较C/S、B/S架构之间的区别(原理、优缺点、适用范围)以及主流的Web程序应用平台、Web工作原理_第3张图片

3、服务器带应用程序和数据库
比较C/S、B/S架构之间的区别(原理、优缺点、适用范围)以及主流的Web程序应用平台、Web工作原理_第4张图片

你可能感兴趣的:(Java,web,java)