结合实例探讨C/S和B/S结构的应用
本文介绍了Client/Server与Browser/Server的结构特点,分析和比较了两种体系结构下开发应用软件的优势与不足。结合实例,提出采用C/S和B/S混合结构的体系来开发安全、高效的系统。
标签: C/S B/S 混合结构
随着计算机软硬件和网络技术的不断发展,给传统应用软件的开发带来了深刻的影响,计算机软件体系结构从单机结构发展到基于网络的体系结构。基于网络和Web的软件和应用系统无疑成为更开放和灵活的体系结构,其中C/S和B/S成为当今世界开发模式技术架构的两大主流技术。
一、C/S结构介绍
C/S(Client/Server)结构,即客户机和服务器结构。通过该软件体系结构可以充分利用两端硬件环境的优势,将任务合理分配到Client端和Server端来实现,降低了系统的实际开销。C/S结构按照其体系结构分为两层和三层结构。
C/S两层结构:前端是客户机,即结合了显示逻辑与事务处理逻辑,接受用户的输入请求,并向数据
库服务提出请求。后端是服务器,即数据处理逻辑和数据库,将数据提交给客户端,客户端将数据进行计算并将结果呈现给用户。
C/S三层结构:表示层是应用的用户接口部分,它担负着用户与应用间的对话功能。
tcp ip协议的体系结构和特点功能层是应用的主体,它用程序的方式将将具体的事务处理逻辑表现出来。
数据层是应用的数据部分,即DBMS(数据库管理系统),负责管理对数据库数据的读写。三层结构是个更灵活的体系结构,它把显示逻辑与事务处理逻辑分开,让事务处理逻辑成为独立处于中间的功能层。程序与用户接口和数据库保持相对独立性,具有更好的移植性,有利于系统扩展。
C/S体系结构虽然采用的是开放模式,但只是系统开发过程中的开放性,在特定应用中无论是Client端还是Server端都还需要特定的软件支持,需要针对不同的操作系统系统开发不同版本的软件,导致它的维护和升级比较困难。
二、B/S结构介绍
B/S(Browser/Server)结构,即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在B/S结构中,用户工作界面和少部分事务逻辑是通过浏览器(Browser)来实现,其主要事务逻辑在服务器端(Server)实现。这样就大大简化了客户端电脑负荷,减轻了系统维护与升级的成本和工作量,降低了用戶的总体成本。
在B/S结构中,处于第一层的是浏览器,可以采用Windows的IE浏览器或者其他常用浏览器。处于第二层的是Web服务器,由一台或多台服务器组成,可以采用IIS或者Apache等软件进行搭建,该层具有良好的可扩充性,可以随着应用的需要增加服务器的数目。处于第三层的是数据库服务器,由数据库系统和管理系统组成,可以根据实际需要采用SQL Server或者Oracle等常用DBMS。
B/S的基本工作模式是:
1.浏览器根据用户操作对Web服务器提出访问请求。
2.Web服务器将请求分析处理,通过数据接口访问DBMS以进行数据的查询统计或事务的提交。
3.处理逻辑根据DBMS返回的结果生成HTML网页经过服务器向客户的浏览器返回结果。
4.显示逻辑-浏览器(Browser)将HTML结果显示给用户。
以目前的技术看,建立基于B/S结构的网络应用,并通过Internet/Intranet结构下数据库应用,相对容易把握、成本也是较低的。能实现不同的人员,从不同的地点,以不同的接入方式访问和操作共同的数据库。能有效地保护数据平台和管理访问权限,服务器数据库也相对安全。
三、C/S和B/S结构比较与分析
1.系统的维护与升级
C/S系统的维护与升级,必须从整体进行考察。部分模块的改变,可能影响到其它模块,使系统维护和升级成本比较大。对于B/S而言,开发、维护等几乎所有工作集中在服务器端,当需要对系统进行升级时,只需更新服务器端的程序即可,减轻了系统维护与升级的成本。
2.用户的操作与使用
对于C/S模式,由于客户端程序有自己特定的使用方法和要求,用户需要接受专门使用培训,但
在用户交互性、错误提示、在线帮助等方面有强大的功能。对于B/S模式,客户端程序只是一个简单易用的浏览器软件。管理员和用户无需培训,就可以直接使用,但用户交互性、错误提示等功能相对较弱。
3.系统结构的安全性
由于C/S是配对的点对点的结构模式,可以采用适用于局域网、安全性比较好的网络协议,安全性可以得到较好的保证。必须安装客户端程序且具有相应权限,才能与服务器端进行交互,从而保证系统的安全性。而B/S采用一点对多点、多点对多点这种开放的结构模式,并采用TCP/IP等运用于网络的开放性协议,用户可以直接利用WWW浏览器进行服务器的探测和访问,系统安全性相对较弱。
四、C/S和B/S混合结构的实际应用
通过上面的分析我们可以看到,C/S结构和B/S结构分别具有自己的优势和不足。因此我们可以在实际的设计与开发过程中,可以考虑采用C/S与B/S相混合的结构。相对于单独采用C/S或B/S,这种方案的优点在于:
1.保证数据的安全性和统一性,可以加强对数据库的管理控制。
2.有效地利用内部计算机的资源,简化了部分客户端的开发与使用。
3.保证复杂功能的交互性和普通功能的易用与统一。
4.系统维护和升级简便,布局合理,网络使用效率较高。
在对学院身份识别系统的系统设计过程中,系统结构设计采用了C/S和B/S的混合结构。将系统的所有子功能分类,分析哪些功能适合采用C/S,哪些适合采用B/S。
适合采用C/S的子功能具备以下特点:
(1)要求具有较强的交互性,客户端由于需要与考勤机进行通讯,单纯的浏览器(Browser)无法完成该功能。
(2)使用范围小,地点固定。客户端安装在楼宇的值班室,地点相对固定。
(3)要求处理大量数据。由于要与考勤机进行频繁的交互,数据的吞吐量相对较大。
适合采用B/S的子功能具备以下特点:
①使用范围广,地点灵活。对于需要进行数据管理和维护的人员,地点相对分散,所以可以采用浏览器+相应权限进行管理和维护。
②维护和升级相对频繁。由于系统在使用过程中,可能会发生适应性维护,可以将系统的管理部分采用B/S结构。
数据的统一性。将系统所需要的数据集中放在数据服务器端,保证数据的统一性和惟一性。
客户端采用VC进行开发,采用了基于单文档的结构,其视图类的基类采用CHtmlView类,目的是用来显示从服务器端返回的网页内容。
服务器端采用JSP进行开发,使用Apache Tomcat进行发布,后台数据库采用SQL Server,目的是接受客户端发送的数据,查询完毕后返回给客户端显示。
五、结束语
综上所述,采用B/S应用结构并不一定要全部取代传统的C/S结构,从某种意义上二者应用界限
并不清晰,而且往往是互相补充、相辅相成的。在实际应用中可以根据实际需要将B/S结构和C/S结构结合起来,开发出具有安全、高效和较强交互性的系统。
参考文献:
[1]吕延岗 张红瑞等:基于C/S和B/S混合模式的身份识别系统的设计与实现[J].计算机与数字工程,2008,(8)
[2]钟 睿 洪 蕾:MIS开发模式的策略研究[J].现代商贸工业,2008,(4)
[3]肖敏 熊前兴等:基于C/S与B/S混合模式的应用研究[J]. 武汉理工大学学报,2006,(3)
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论