【摘要】本文分析了browser/server体系结构开发应用软件的特点和不足,介绍了组件技术,提出了克服该不足的一种方法。
【关键词】web com 应用软件 服务器
由于客户服务器(c/s)两层结构存在灵活性差、升级困难、维护工作量大等缺陷,已较难适应当前信息技术与网络技术发展的需要。随着web技术的日益成熟,browse/server(简称b/s)结构已成为取代client/server(简称c/s)结构的一种全新技术。采用该结构软件的优势在于:一是无须开发客户端软件,维护和升级方便;二是可跨平台操作,任何一台机器只要装有/pc/">计算和数据访问等关键事务,只负责显示部分。所以维护人员不再为程序的维护工作奔波于每个客户机之间,而把主要精力放在功能服务器上程序的更新工作。这种三层结构在层与层之间相互独立,任何一层的改变都不会影响其他层的功能。
一、组件技术在 b/s体系结构系统开发应用中的不足
1、浏览器功能实现困难。由于浏览器只是为了进行web浏览而设计的,当其应用于web应用系统时,许多功能不能实现或实现起来比较困难。比如通过浏览器进行大量的数据输入,或进行报表的应答都是比较困难和不便的。
2、复杂的应用构造困难。虽然可以用activex、java等技术开发较为复杂的应用,但是相对于发展已非常成熟c/s的一系列应用工具来说,这些技术的开发复杂,并没有完全成熟的技术供使用。
3、http可靠性低有可能造成应用故障。WwW.133229.cOM特别是对于管理者来说,采用浏览器方式进行系统的维护是非常不安全和不方便的。
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控件来实现。
二、组件技术在 b/s体系结构系统开发应用中的优点
1、充分发挥了b/s与c/s体系结构的优势,弥补了二者不足。充分考虑用户利益,保证浏览查询者方便操作的同时也使得系统更新简单,维护简单灵活,易于操作。
2、信息发布采用b/s结构,保持了瘦客户端的优点。装入客户机的软件可以采用统一的/network/">网络综合服务器都是基于工业标准,可以在所有的平台上工作。
3、数据库端采用c/s结构,通过odbc/jdbc连接。这一部分只涉及到系统维护、数据更新等,不存在完全采用c/s结构带来的客户端维护工作量大等缺点。并且在客户端可以构造非常复杂的应用,界面友好灵活,易于操作,能解决许多b/s存在的固有缺点。
4、对于原有基于c/s体系结构的应用。可以非常容易地升级到这种体系结构,只需开发用于发布的/pc/">计算任务必须由组件来负责,asp脚本只起组装组件的角色。而且组件在网络上的位置可被透明地分配,组件和使用它的程序既能在同一进程中运行,也可在不同进程或不同的机器上运行。组件之间是相互分离和独立的。利用mts或com+对组件管理更加方便。
activex是遵循com/dcom规程而开发的用于internet的一种对象链接与嵌入技术(ole)。com是应ole设计者的需求而诞生的。其基本的出发点是想让某个软件通过一个通用的机构为另一个软件提供服务。对于基于web的应用而言,它提供了使组件嵌入到web页面以扩展交互功能的应用机制。客户端控件是面向用户的,以可视化的图形视频或文字界面或音频形式在浏览器上出现,但它可能并不是浏览器的组成部分,这些控件原先是放在服务器上的。当浏览器发出请求时,web服务器回传页面,由浏览器负责解释。在解释过程中,若发现页面中要求调用activex控件时,则用该控件在页面中注明的id值先在本地的注册表内进行查询。若已经存在,则说明该控件已经在本地安装,然后通过注册表中的相关信息直接使用该控件;否则就要根据页面中所提示的该控件所在的服务器上的路径到服务器上去下载并且自动完成在本地的安装注册,使该控件成为本地资源,供今后使用,这就是所谓“一次下载,永久使用”。客户端控件一旦在本地安装完毕,就等价于一个可执行的应用程序,它能访问使用本地的资源,甚至进行远程访问。当然,这可能带来了安全性问题。
三、结束语
随着internet普及,基于b/s体系结构开发应用程序变为流行的方式,将组件技术应用到b/s体系结构中,实现业务逻辑封装,将极大地提高软件的可重性和可维护性。
【参考文献】
[1] 林子禹等:基于web与组件技术的企业应用系统设计模型[j].计算机工程与应用,2000(6).
[2] 余英、梁刚:vc实践与提高com和com+篇[m].中国铁道出版社,2006.
[3] 楼伟进、应飚:com/dcom/com+组件技术[j].计算机应用, 2000(4).
[4] 张震、张曾科:一种新的web数据库系统结构[j].小型微型计算机系统,2001(5).