论文部分内容阅读
本文通过介绍数据库中间件在电信综合网管性能子系统中的应用,介绍了中间件技术的发展,必要性和优越性,并阐述了数据库中间件技术的具体实现,包括中间件的基本元素组成,工作流程,数据库接口的选择,设计方式的选择,开发平台的选择和在云南联通数据综合网管性能子系统中的具体实现。数据库中间件完成数据库的各种逻辑操作,通过提供接口的方式为客户端和数据库服务器之间提供一个桥梁。数据库中间件是采用EJB技术来进行设计,EJB是一种基于中间件开发的分布式模型框架,它包含业务逻辑的可重用单元,允许把应用程序逻辑与系统级服务分开,这样开发者可以集中精力关注业务逻辑,而分布式协议、状态管理等复杂的事务转交给服务器处理。具有“代码一次实现编写,可重复使用”的特性。EJB组件结构由主接口(EJBHome)、组件接口(EJB对象)和组件对象(Bean实现类)三部分组成的。主接口负责控制Bean的寿命周期的操作:生成,删除和寻找Bean;组件接口定义Bean要向客户提供的业务方法;组件对象定义了所有业务逻辑的具体实现细节。EJB有三种类型的Bean,会话Bean,实体Bean和消息驱动的Bean。在设计中考虑到系统的 灵活 性和高可 移植 性,我们主要采用无状态会话Bean来进行设计。JNDI是J2EE平台中JAVA命名和目录接口,J2EE应用程序利用JNDI查找生成EJB等所用的接口和JDBC连接。客户端调用数据库中间件时是通过JNDI找到EJB中间件的远程接口,通过远程接口找到实现类,从而调用数据库中间件实现各种数据处理。数据库访问接口常用的有CGI,WEB API ,ODBC,JDBC等,CGI不支持数据的并发访问,即CGI程序不能被多个客户请求共享,每当接到一个客户请求,即使有一个该CGI程序的实例在运行,也必须重新启动一个相同的实例,即创建一个并发进程。并发请求越多,创建的并发进程越多,占用了大量内存,限制了应用程序自身所用的内存资源,而且每个请求创建一个进程也会消耗很多时间,在需要多个数据库连接的多用户应用中,采用CGI来连接数据库势必会随用户的增加而增加用户连接数据库的等待时间,使系统的性能降低,并可导致系统最终的崩溃;WEB API只能在运行于特定的web服务器和操作系统上,互相不能移植; ODBC是数据库访问的标准接口。它建立一组<WP=51>规范,并提供一组对数据库访问的标准API(应用程序编程接口),使应用程序可以通过ODBCAPI 存取保存在多种不同数据库管理系统(DBMS)中的数据,而不管论每个DBMS使用了何种数据存储格式和编程接口,但是它对数据源未优化,会对数据库存取速度有影响,并且只能用于关系数据库,使得很难利用ODBC访问对象数据库及其它非关系数据库。JDBC是一种可用于执行SQL语句的Java语言的数据库访问接口,它由一些Java语言编写的类和界面组成。JDBC为数据库应用开发人员、数据库前台工具开发人员提供了一种标准的应用程序设计接口,使开发人员可以用纯Java语言编写完整的数据库应用程序。由于Java语言与平台无关,所以利用JDBCAPI写成的访问数据库的程序具有很好的 通用特性 ,移植方便,因此在设计中采用JDBC作为数据库访问接口。J2EE(Java 2 Enterprise platform )提供了一个多层结构的应用程序模型,该模型具有重用组件的能力,基于扩展语言的数据交换,统一的安全模式和灵活的事物控制,使开发者不仅可以比以前更快的开发新的市场解决方案,而且其独立于平台,基于组件的J2EE解决方案不再受任何提供商的产品和应用程序编程界面的限制,提供商和买主都可以选择最适合于其商业应用和所需技术的产品和组件。数据库中间件技术已经运用在云南联通数据综合网管项目上,并已经在实际运行,并且取得了很好的效果,通过此技术实现了数据库的共享,提高了系统的运行效率和开发进程。