B-S体系结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
浅析B/S体系结构
摘要:本文介绍了组件以及activex技术,分析了browser/server 体系结构开发应用软件的特点和不足。
在对b/s体系结构分析的基础上,提出了一种新的体系结构,把b/s与c/s相结合,将组件技术和activex技术分别应用在服务器端和客户端,开发高效安全的应用系统。
关键词:web com 应用软件服务器
一、com组件技术和activex技术
com是一种技术标准。
它是由微软公司创建,提供了使多个应用程序或组件对象协同工作并相互通信的能力。
com组件是遵循com 规范编写、以win32动态链接库(dll)或可执行文件(exe)的形式发布的可执行的二进制代码。
遵循com的规范标准,使组件与应用、组件与组件之间可以相互操作,极其方便地建立可伸缩的应用系统。
从工程的角度看,组件在应用开发方面具有以下特点:
1.组件与开发的工具语言无关。
开发人员可以根据需要和爱好选择特定语言工具实现组件的开发。
常用的开发工具是vb、vc和delphi。
将组件编译成dll或exe置于服务器端。
可有效保护商业秘密。
2.通过接口有效保证了组件的复用性。
一个组件具有若干个接口,每个接口代表组件的某个属性或方法。
其它组件或应用程序可以设置或调用这些属性和方法来进行特定的逻辑处理。
组件和应用程序的连接是通过其接口实现的。
负责集成的开发人员无须了解组
件功能的如何实现,而只须创建组件对象与其接口建立连接。
在保证接口一致性的前提下,可以调换组件、更新版本,也可以将组件应用在不同的系统中。
3.组件运行效率高、便于使用和管理。
因为组件是二进制代码,比asp脚本运行效率高,所以核心的商务逻辑计算任务必须由组件来负责,asp脚本只起组装组件的角色。
而且组件在网络上的位置可被透明地分配,组件和使用它的程序既能在同一进程中运行,也可在不同进程或不同的机器上运行。
组件之间是相互分离和独立的。
利用mts或com+对组件管理更加方便。
二、基于b/s体系结构开发应用系统
1.b/s三层体系结构
在b/s体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。
b/s结构简化了客户机的工作,客户机上只需配置少量的客户端软件。
服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由web server完成。
实际上b/s体系结构是把二层c/s结构的事务处理逻辑模块从客户机的任务中分离出来,由web服务器单独组成一层来负担其任务,把负荷分配给了web服务器。
这种三层体系结构如图1所示。
这种结构不仅把客户机从沉重的负担和不断对其提高的性能的
要求中解放出来,也把技术维护人员从繁重的维护升级工作中解脱出来。
由于客户机把事务处理逻辑部分分给了功能服务器,使客户机一下子”苗条”了许多,不再负责处理复杂计算和数据访问等关键事务,只负责显示部分,所以维护人员不再为程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上程序的更新工作。
这种三层结构在层与层之间相互独立,任何一层的改变不会影响其它层的功能。
2.b/s三层体系结构的不足
经过近一两年的应用,b/s体系结构暴露出了许多不足地方,具体表现在以下几个方面:
(1)由于浏览器只是为了进行web浏览而设计的,当其应用于web应用系统时,许多功能不能实现或实现起来比较困难。
比如通过浏览器进行大量的数据输入,或进行报表的应答都是比较困难和不便的。
(2)复杂的应用构造困难。
虽然可以用activex、java等技术开发较为复杂的应用,但是相对于发展已非常成熟c/s的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术供使用。
(3) http可靠性低有可能造成应用故障,特别是对于管理者来说,采用浏览器方式进行系统的维护是非常不安全与不方便的。
(4)web服务器成为对数据库的唯一的客户端,所有对数据库的连接都通过该服务器实现。
web服务器同时要处理与客户请求以及
与数据库的连接,当访问量大时,服务器端负载过重。
(5)由于业务逻辑和数据访问程序一般由javascript、vbscript 等嵌入式小程序实现,分散在各个页面里,难以实现共享,给升级和维护也带来了不便。
同时由于源代码的开放性,使得商业规则很容易暴露,而商业规则对应用程序来说则是非常重要的。
为克服以上不足,在原有b/s体系结构基础上,采用一种新的体系结构,如图2所示。
在该种结构体系中,一些需要用web处理的,满足大多数访问者请求的功能界面(如信息发布查询界面)采用b/s结构。
后台只需少数人使用的功能应用(如数据库管理维护界面)采用c/s结构。
组件位于web应用程序中,客户端发出http请求到web server。
web server将请求传送给web应用程序。
web应用程序将数据请求传送给数据库服务器,数据库服务器将数据返回web应用程序。
然后再由web server将数据传送给客户端。
对于一些实现起来困难的功能或一些需要丰富的html页面,通过在页面中嵌入activex
控件来实现。
采用这种结构优点在于:(1)充分发挥了充分了b/s与c/s体系结构的优势,弥补了二者不足。
充分考虑用户利益,保证浏览查询者方便操作的同时也使得系统更新简单,维护简单灵活,易于操作。
(2)信息发布采用b/s结构,保持了瘦客户端的优点。
装入客户机的软件可以采用统一的www浏览器。
而且由于www浏览器和网络
综合服务器都是基于工业标准,可以在所有的平台上工作。
(3)数据库端采用c/s结构,通过odbc/jdbc连接。
这一部分只涉及到系统维护、数据更新等,不存在完全采用c/s结构带来的客户端维护工作量大等缺点。
并且在客户端可以构造非常复杂的应用,界面友好灵活,易于操作,能解决许多b/s存在的固有的缺点。
(4)对于原有基于c/s体系结构的应用,可以非常容易地升级到这种体系结构,只需开发用于发布的www界面,可以保留原有的c/s结构的某些子系统,充分地利用现有系统的资源。
使得现有系统或资源无需大的改造即可以连接使用,保护了用户以往的投资。
参考文献:
[1]余英,梁刚.vc实践与提高com和com+.中国铁道出版社.
[2]林子禹等.基于web与组件技术的企业应用系统设计模型.计算机工程与应用,2000.6.
[3]夏骄雄等.基于intranet的管理信息系统.小型微型计算机系统,2001.4.
[4]楼伟进,应飚.com/dcom/com+组件技术.计算机应用,2000.4.。