主页
软件技术
返回
软件开发B/S结构和C/S结构的区别

        B/S和C/S都是随着互联网的发展而出现的一种网络结构模式,而其用的非常广泛,在我们生活中都很常见。那它们到底是什么呢?接下来就详细的介绍一下B/S和C/S。

        1.jpg

        一、B/S和C/S两者的概念 

        1、B/S结构

        B是英文单词“Browser”的首字母,即浏览器的意思;S是英文单词“Server”的首字母,即服务器的意思。B/S就是“Browser/Server”的缩写,即“浏览器/服务器”模式。是随着Internet技术的兴起,是一种不同于C/S结构的新的体系架构,在这种结构下,用户操作与交互的界面是通过通用的浏览器(如,IE浏览器)来实现。

        B/S结构是随着互联网的发展,web出现后兴起的一种网络结构模式。这种模式统一了客户端,让核心的业务处理在服务端完成。你只需要在自己电脑或手机上安装一个浏览器,就可以通过web Server与数据库进行数据交互。

                2.png         

        B/S结构一部分事务逻辑在前端实现,但是主要事务逻辑在服务器端实现。B/S结构,主要是利用了不断成熟的WWW浏览器技术,结合浏览器的多种脚本语言(VBScript、javascript…)和ActiveX技术,用通用浏览器就实现了原来需要复杂专用软件才能实现的强大功能,并节约了开发成本,是一种全新的软件系统构造技术。随着Windows操作系统将浏览器技术植入操作系统内部,这种结构更成为当今应用软件的首选体系结构。显然B/S结构应用程序相对于传统的C/S结构应用程序将是巨大的进步。

        B/S结构采用星形拓扑结构建立企业内部通信网络或利用Internet虚拟专网(VPN)。前者的特点是安全、快捷、准确。后者则具有节省投资、跨地域广的优点。须视企业规模和地理分布确定。企业内部通过防火墙接入Internet,再整个网络采用TCP/IP协议。   

        2、C/S 架构

        C是英文单词“Client”的首字母,即客户端的意思,C/S就是“Client/Server”的缩写,即“客户端/服务器”模式。

        C/S结构是一种软件系统体系结构,也是生活中很常见的。这种结构是将需要处理的业务合理地分配到客户端和服务器端,这样可以大大降低通信成本,但是升级维护相对困难。比如我们手机中安装的微信、qq、王者荣耀等应用程序就是C/S结构。 

        3.png

        C/S 架构是一种典型的两层架构,其全称是Client/Server(客户端/服务器),其客户端包含一个或多个在用户的电脑上运行的程序,而服务器端有两种,一种是数据库服务器端,客户端通过数据库连接访问服务器端的数据;另一种是Socket服务器端,服务器端的程序通过Socket与客户端的程序通信。

        C/S 架构也可以看做是胖客户端架构。因为客户端需要实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户端的部分需要承受很大的压力,因为显示逻辑和事务处理都包含在其中,通过与数据库的交互(通常是SQL或存储过程的实现)来达到持久化数据,以此满足实际项目的需要,但是开发成本太高。

        二、C/S与B/S区别和优势劣势

        Client/Server是一般多数是建立在局域网的基础上的。Browser/Server是建立在广域网的基础上的。 

        1、信息流不同

        C/S程序一般是典型的中央集权的机械式处理,交互性相对低。

        B/S信息流向可变化, B-B B-C B-G等信息、流向的变化,更象交易中心。

        2、对程序架构不同

        C/S程序可以更加注重流程,可以对权限多层次校验,对系统运行速度可以较少考虑。 

        B/S对安全以及访问速度的多重的考虑,建立在需要更加优化的基础之上。比C/S有更高的要求B/S结构的程序架构是发展的趋势,从微软的.Net系列的BizTalk2000  Exchange 2000等,全面支持网络的构件搭建的系统。 SUN和IBM推的JavaBean构件技术等,使B/S更加成熟。

        3、处理问题不同

        C/S 程序处理用户群固定, 并且在相同区域, 安全要求高需求, 与操作系统相关。都是相同的系统。

        B/S建立在广域网上, 是面向不同的用户群,分散地域, 这是C/S无法作到的。 与操作系统平台关系最小,能在不同的操作系统上进行访问。 

        4、软件重用不同

        C/S 程序可以不可避免的整体性考虑,构件的重用性不如在B/S要求下的构件的重用性好。

        B/S对的多重结构,要求构件相对独立的功能。能够相对较好的重用。就入买来的餐桌可以再利用,而不是做在墙上的石头桌子。

        5、对安全要求不同

        C/S一般面向相对固定的用户群,对信息安全的控制能力很强。一般高度机密的信息系统采用C/S结构适宜。可以通过B/S发布部分可公开信息。

        B/S建立在广域网之上,对安全的控制能力相对弱,面向是不可知的用户群。

        6、用户接口不同

        C/S多是建立的Window平台上,表现方法有限,对程序员普遍要求较高。

        B/S建立在浏览器上, 有更加丰富和生动的表现方式与用户交流。 并且大部分难度减低,减低开发成本。

        7、硬件环境不同

        C/S 一般建立在专用的网络上, 小范围里的网络环境, 局域网之间再通过专门服务器提供连接和数据交换服务。

        B/S建立在广域网之上的,不必是专门的网络硬件环境,例与电话上网,租用设备。信息自己管理。有比C/S更强的适应范围,一般只要有操作系统和浏览器就行

        8、系统维护不同

        C/S 系统维护是软件生存周期中,开销大。C/S 程序由于整体性, 必须整体考察, 处理出现的问题以及系统升级,升级难,可能是再做一个全新的系统。

        B/S 构件组成,方面构件个别的更换,实现系统的无缝升级。  系统维护开销减到最小。用户从网上自己下载安装就可以实现升级。 

        三、B/S模式的优点和缺点:

        A、B/S 模式的优点和缺点 

        1.B/S结构的优点: 

          (1)、业务扩展简单方便,通过增加页面即可增加服务器功能。 

          (2)、共享性强

          (3)、维护简单方便,只需要改变网面,即可实现所有用户的同步更新。

          (4)、具有分布性特点,可以随时随地进行查询、浏览等业务处理。 

          2.B/S 模式的缺点: 

          (1)、用户体验效果不是很理想,B/S需要单独界面设计,厂商之间的界面也是千差万别,由于浏览器刷新机制,使用时有刷屏现象,好在AJAX技术解决这一难题,像用友,

        智赢,名易软件等开发的B/S架构软件用户体验效果与C/S差不多。

          (2)、响应速度不及C/S,随着AJAX技术的发展,相比传统B/S结构软件提升一倍速度。 

        B、C/S 模式的优点和缺点 

        1.C/S 模式的优点: 

        (1).C/S结构的管理信息系统具有较强的事务处理能力。

        (2).由于客户端实现与服务器的直接相连,没有中间环节,因此响应速度较快。

        2. C/S 模式的缺点: 

        (1).对客户端的操作系统一般也会有限制。可能适应于Win98, 但不能用于win2000或Windows XP。或者不适用于微软新的操作系统等等,更不用说Linux、Unix等。

        (2).客户端需要安装专用的客户端软件。首先涉及到安装的工作量,其次任何一台电脑出问题,如病毒、硬件损坏,都需要进行安装或维护。特别是有很多分部或专卖店的情况,

        不是工作量的问题,而是路程的问题。还有,系统软件升级时,每一台客户机需要重新安装,其维护和升级成本非常高。

        (3).只适用于局域网。而随着互联网的飞速发展,移动办公和分布式办公越来越普及,这需要我们的系统具有扩展性。这种方式远程访问需要专门的技术,同时要对系统进行专门的设计来处理分布式的数据。

        四、B/S和C/S应用范围

        如果是中小型企业对于一般的系统,尽可能使用BS的,CS成本过高,C/S较B/S性能相对稳定一些;但在用户体念度方面C/S明显不如B/S的系统,C/S功能比较多,可是购买客户端、以及基本的培训会使费用多一些,且厂商实施起来也麻烦,用户操作起来吃力,所以说中小企业采用B/S应该会更适合些。B/S开发,表现层都是用web技术(html/css/javascript);有时候为了迎合浏览器浏览或者根据客户的需求,页面要做一些偏html的设置,可以借助一些脚本、样式开发出来,能达到很好效果。

        B/S(浏览器/服务器模式)是随着Internet技术的兴起,对C/S结构的一种改进。在这种结构下,软件应用的业务逻辑完全在应用服务器端实现,用户表现完全在Web服务器实现,客户端只需要浏览器即可进行业务处理,是一种全新的软件系统构造技术。这种结构更成为当今应用软件的首选体系结构。名易OA系列产品即属于此类结构。

        对于一些软件系统升级、修改比较频繁,B/S架构的产品明显体现的更方便的特性。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行,如果是异地只需要把服务器连接上网即可立即进行维护和升级,这对人力、时间、费用的节省是相当惊人的,但C/S的做不到。

        一个稍微大一点单位来说,系统管理人员如果需要在几百甚至几千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。所以客户机越来越"瘦"而服务器越来越"胖"是将来软件的主流发展方向,这使得升级和维护越来越容易而使用越来越简单。

        客户根据自己的需求购买软件,在选择方面空间不是很大,例如:酒店管理软件,网吧用的管理软件等系统选C/S的。OA系统,CRM等选择B/S的。

        


宋忠良:中国城市规划的弊端源自机制之弊
工程施工项目管理概论:施工项目经理部
时评:城镇建设缺乏历史文化精神 民盟中央提建议整改
2015年安全师《案例》考点:水产包装机械行业发展
时评:窘境丛生创新思维打破养老地产僵局
09年一级建造师考试《法规及相关知识》辅导资料(35)
工程项目管理中有效的知识管理
郑曙旸:社会和政治影响室内设计
信息发布:名易软件http://www.myidp.net