c/s和b/s两种架构区别与优缺点分析,架构一、c/s 架构
1、 概念
c/s 架构是一种典型的两层架构,其全程是client/server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是socket服务器端,服务器端的程序通过socket与客户端的程序通信。
c/s 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是sql或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。
2 、优点和缺点
优点:
2.1 c/s架构的界面和操作可以很丰富。
2.2 安全性能可以很容易保证,实现多层认证也不难。
2.3 由于只有一层交互,因此响应速度较快。
缺点:
2.4 适用面窄,通常用于局域网中。
2.5 用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。
2.6 维护成本高,发生一次升级,则所有客户端的程序都需要改变。
二、b/s架构
1、概念
b/s架构的全称为browser/server,即浏览器/服务器结构。browser指的是web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,browser客户端,webapp服务器端和db端构成所谓的三层架构。b/s架构的系统无须特别安装,只有web浏览器即可。
b/s架构中,显示逻辑交给了web浏览器,事务处理逻辑在放在了webapp上,这样就避免了庞大的胖客户端,减少了客户端的压力。因为客户端包含的逻辑很少,因此也被成为瘦客户端。
2 、优点和缺点
优点:
1)客户端无需安装,有web浏览器即可。
2)bs架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。
3)bs架构无需升级多个客户端,升级服务器即可。
缺点:
1)在跨浏览器上,bs架构不尽如人意。
2)表现要达到cs程序的程度需要花费不少精力。
3)在速度和安全性上需要花费巨大的设计成本,这是bs架构的最大问题。
4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在ajax风行后此问题得到了一定程度的缓解)
三、b/s对c/s的改进和扩展
正如前文所说,c/s和b/s都可以进行同样的业务处理,但是b/s随着internet技术的兴起,是对c/s结构的一种改进或者扩展的结构。相对于c/s,b/s具有如下优势:
1、分布性:可以随时进行查询、浏览等业务
2、业务扩展方便:增加网页即可增加服务器功能
3、维护简单方便:改变网页,即可实现所有用户同步更新
4、开发简单,共享性强,成本低,数据可以持久存储在云端而不必担心数据的丢失。
四、主流的web程序应用平台
一个动态网站服务器平台至少要包括:操作系统+web服务器+应用程序服务+数据库。一个优秀的网站服务器是由多方面因素决定的,如个人喜好、部署费用、安全机制等。而现在主流的三种web平台:asp.net、javaee和lamp各有优缺点,以满足不同的需要和用户。三者比较如下:
三种平台的各部分组合:
asp.net:windows server+iis+sql server+asp
javaee:unix+tomcat+oracle+jsp
lamp:linux+apache+mysql+php
五、三张图告诉你web工作原理
1、服务器不带应用程序和数据库,直接请求html文件
2、服务器带应用程序(如php)
3、服务器带应用程序和数据库
c/s架构与b/s架构的不同
c/s 架构
c/s 架构是一种典型的两层架构,其全程是client/server,即客户端服务器端架构,其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是socket服务器端,服务器端的程序通过socket与客户端的程序通信。
c/s 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是sql或存储过程的实现)来达到持久化数据,以此满足实际项目的需要。
c/s 架构的优缺点
优点:
1.c/s架构的界面和操作可以很丰富。
2.安全性能可以很容易保证,实现多层认证也不难。
3.由于只有一层交互,因此响应速度较快。
缺点:
1.适用面窄,通常用于局域网中。
2.用户群固定。由于程序需要安装才可使用,因此不适合面向一些不可知的用户。
3.维护成本高,发生一次升级,则所有客户端的程序都需要改变。
b/s架构
b/s架构的全称为browser/server,即浏览器/服务器结构。browser指的是web浏览器,极少数事务逻辑在前端实现,但主要事务逻辑在服务器端实现,browser客户端,webapp服务器端和db端构成所谓的三层架构。b/s架构的系统无须特别安装,只有web浏览器即可。
b/s架构中,显示逻辑交给了web浏览器,事务处理逻辑在放在了webapp上,这样就避免了庞大的胖客户端,减少了客户端的压力。因为客户端包含的逻辑很少,因此也被成为瘦客户端。
b/s架构的优缺点
优点:
1)客户端无需安装,有web浏览器即可。
2)bs架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的目的,交互性较强。
3)bs架构无需升级多个客户端,升级服务器即可。
缺点:
1)在跨浏览器上,bs架构不尽如人意。
2)表现要达到cs程序的程度需要花费不少精力。
3)在速度和安全性上需要花费巨大的设计成本,这是bs架构的最大问题。
4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是客户乐意看到的。(在ajax风行后此问题得到了一定程度的缓解)
b/s架构与c/s架构的具体不同?
nt/server)结构,即大家熟知的客户机和服务器结构。它是软件系统体系结构,通过它可以充分利用两端硬件环境的优势,将任务合理分配到client端和server端来实现,降低了系统的通讯开销。目前大多数应用软件系
统都是client/server形式的两层结构,由于现在的软件应用系统正在向分布式的web应用发展,web和client/server应用都可以进行同样的业务处理,应用不同的模块共享逻辑组件;因此,内部的和外部的用户都可以访问新的和现有的应用系统,通过现有应用系统中的逻辑可以扩展出新的应用系统。这也就是目前应用系统的发展方向。
传统的c/s体系结构虽然采用的是开放模式,但这只是系统开发一级的开放性,在特定的应用中无论是client端还是server端都还需要特定的软件支持。由于没能提供用户真正期望的开放环境,c/s结构的软件需要针对不同的操作系统系统开发不同版本的软件,加之产品的更新换代十分快,已经很难适应百台电脑以上局域网用户同时使用。而且代价高,效率低。
第二、什么是b/s结构。
b/s(browser/server)结构即浏览器和服务器结构。它是随着
internet技术的兴起,对c/s结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过www浏览器来实现,极少部分事务逻辑在前端
(browser)实现,但是主要事务逻辑在服务器端(server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(tco)。
以目前的技术看,局域网建立b/s结构的网络应
用,并通过internet/intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地
点,以不同的接入方式(比如lan,wan,internet/intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服
务器数据库也很安全。特别是在java这样的跨平台语言出现之后,b/s架构管理软件更是方便、快捷、高效。
第三、管理软件主流技术。
管理软件技术的主流技术与管理思想一样,也经历了三个发展时期。首先,界面技术从上世纪dos字符界面到windows图形界面(或图形用户界面gui),直至browser浏览器界面三个不同的发展时期。其次,今天所有电脑的
浏览器界面,不仅直观和易于使用,更主要的是基于浏览器平台的任何应用软件其风格都是一样的,使用人对操作培训的要求不高,而且软件可操作性强,易于识
别;再者,平台体系结构也从过去单用户发展到今天的文件/服务器(f/s)体系、客户机/服务器(c/s)体系和浏览器/服务器(b/s)体系。
二、c/s和b/s之比较
c/s和b/s是当今世界开发模式技术架构的两大主流技术。c/s是美国borland公司
最早研发,b/s是美国微软公司研发。目前,这两项技术以被世界各国所掌握,国内公司以c/s和b/s技术开发出产品也很多。这两种技术都有自己一定的市
场份额和客户群,各家企业都说自己的管理软件架构技术功能强大、先进、方便,都能举出各自的客户群体,都有一大群文人墨客为自己摇旗呐喊,广告满天飞,可
谓仁者见仁,智者见智。
1、c/s架构软件的优势与劣势
(1)、......余下全文>>
http://www.bkjia.com/phpjc/898288.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/898288.htmltecharticlec/s和b/s两种架构区别与优缺点分析,架构 一、c/s 架构 1、 概念 c/s 架构是一种典型的两层架构,其全程是client/server,即客户端服务器端架...