作者:居德华 来源:上海亚士帝信息工程公司
自适应(Adaptive)/反射(Reflective)中间件
reflective middleware is simply a middleware system that provides inspection and adaptation of its behaviour through an appropriate CCSR.
A reflective system is one that supports an associated causally connected self representation (CCSR).。"Causally-connected" means that changes made to the self-representation are immediately mirrored in the underlying system’s actual state and behavior, and vice-versa.
这类系统的特点是它能更好适应高度动态变化的环境,改善服务质量(QOS),提高服务性能和效率,如改善负荷平衡等。
这类系统,近几年在国外得到广泛重视和研究,包括作为博士论文的课题。
如NASA 研究新一代网络技术的项目NREN,就把自适应中间件列为重要研究课题,以保证高速网上的分布多媒体应用的服务质量(QOS)。
类似的应用系统为所谓的信息传播系统Dissemination-Based Information Systems (DBIS),通常要求在宽带网上传输非对称大容量信息,数据提交类型也多样化,包括请求/响应、预定/出版、广播式、信息点播等,DBIS 要求对服务质量进行监控,另外,面对大量用户,在内容上也可能会有重复,为提高效率,需要设置缓冲等,为适应这类应用,国外研究需要采用一层自适应中间件。
技术的另一应用是,建立可客户化的中间件,如见 Mark Astley et al, Comm.ACM, vol.44, No.5, 2001, pp.99-107.
还有一个应用例是,在CORBA环境中建立adaptive ORB,它能根据网络负荷,
自动在handle-driven 和 forwardin 两种模式中切换,显著改进了传输效率。
华盛顿大学、加州大学、西门子联合研究的自适应CORBA 中间件,也用于分布实时嵌入式系统(DRE)应用中,将其Adaptive and Reflective Middleware Systems (ARMS) 应用在构造CORBA Component Model (CCM)。
在电子商务应用领域,特别无线应用,也在考虑用自适应中间件,改变现在中间件服务的静态性,使它的服务能根据应用要求,进行谈判和调整,能随环境的变化,自动优化服务性能,研究方向包括:服务质量(QOS)、安全性、事务处理、信息架构的适应。可参考Amidst 项目(http://amidst.ctit.utwente.nl/).
Michigan 州立大学软件工程网络系统(SENS)实验室的RAPIDware 项目,与Motorola, Lucent, Cisco和海军合作,研究适合移动应用的自适应中间件,对各种类型的移动设备,能自适应选择通信协议,容错和安全服务,重配置用户界面。
BBN 有个五年计划项目,叫Quality Objects (QuO),开发自适应中间件,能支持在分布实时控制系统中,按QOS合同要求,实施对分布设备的实时管理和控制。
其它应用包括网络负荷自动平衡和容错计算。
集成开发工具的需要
完整的企业应用集成,要求连接Web, 各种客户端、服务器、现成应用系统,要求开发者熟悉各种中间件和相关技术,对技能要求相当高,常使开发人员感到难以胜任,为此特别需要有良好的开发工具环境支持,使各种中间件能捆绑在一个容易使用的集成软件包,使开发人员能工作在业务过程级,而不是困难的代码级。目前,已出现一些这样的环境,如:
1) IBM 的Web Sphere,包括开发环境、CORBA对象服务,TP监程,信息队列软件,应用开发和集成工具等;
2) Active Software Inc.的 Integration System
3) SuperNova 第四代语言开发环境
即使难以开发出一个集成的开发环境,如果能为各类应用,推荐一类可行的中间件结构框架和实施策略,也是对企业应用用户大有帮助的。
还有一种策略,是在吃透某一类中间件的基础上,进行增值服务,一个较典型的例子是Nastel Technologies,它在IBM MQSeries 基础上,提供一整套独特的管理方案。
在工具供应商方面,大约可划分为几类:
1) 提供特色功能的小公司 如
Rogue Wave: SourcePro Core C++应用开发,包罗原先三个工具(标准 C++ 库, Tools.h++&: ,Threads.h++).
SilverStream:eXtend Workbench 1.0 J2EE 和Web Service集成开发环境
eXtend Application Server 3.7.3 Developer Edition
eXtend™ Application Server 3.7.3 Workgroup Edition
jBroker Web 1.0 XML RPC 环境,支持用WSDL写Web service 界面
jBroker Orb 3.1 符合 CORBA 2。3规定
jBroker MQ 1.3 JMS 纯 Java实现
他们或者领先于技术,或者填补空档。
2) 平台供应商 为自己的技术增色 像微软、IBM、SUN、Orcale、Sybase
他们也常与第三方结成联盟,扩大自己的工具系列,有时还利用自身实力,进行兼并
3) 独立的工具供应商 他们不依附特定技术,让用户有更广泛选择,如
Rational
CA/Sterling Software:Eureka:Portal 开发企业信息门户(EIP)
Jasmine ii XML 框架
COOL:Gen Web 应用开发
COOL:Joe EJB 开发工具
Unicenter TNG 应用管理
Vantage 存储资源管理(SRM)
SOLVE:Netmaster 网络管理