论文部分内容阅读
随着计算机技术日新月异,许多电子商务交易应用需要在多种平台之间移植,并且需要可靠、高效的数据传输。交易中间件的出现屏蔽了异构系统中复杂的操作系统和网络协议,但随着系统的复杂性以及用户需求不断提高,传统交易中间件渐渐暴露其不足的一面,如灵活性差、可移植性差等。具体表现在,通常为用户提供大量的API来进行交易的操作,这种面向过程的交易服务思想,以及调用多种专用的API或繁冗的封装器,难以满足网络集成应用,尤其是在以服务为核心的系统架构时这种弊端更为明显。此外,平台的依赖也是制约应用多样化的瓶颈,如传统的CICS只运行于主机平台,假如一个集成于主机系统的应用需要对其进行平台上的移植,仅应用层与操作系统的之间的中间件移植就显得极为困难。因此需要一种新的交易中间件模式,以提高交易中间件的灵活性、可移植性。为解决这些难题本文设计并实现了一种“对象交易中间件OoTxM”模型,通过面向对象的思想实现交易事务——具体交易操作封装在交易对象内部,通过控制交易对象来实现具体的交易,有效的降低了交易操作与交易中间件API之间的耦合,这样用户可以在交易对象内任意的定义交易操作,极大提高了交易的灵活性。OoTxM从设计上自顶向下分成了应用层、交易处理层和交易存储层,在应用层中使用对象串行化传输技术,将用户从代理发出的交易请求通过网络转发到交易处理层;为了实现显式/隐式交易事务、交易的多重并发嵌套、交易失败恢复等一系列交易服务,采用了交易存储层提供的集群存储机制、snapshot快照技术对交易对象的中间状态进行保存与恢复,最后在真正的交易对象上执行具体的操作,OoTxM还根据XA分布式协议定义了在多个数据对象之间的交易处理过程,实现了多数据源间的交易。另外OoTxM还提供了许多可扩展的机能,如支持UDP命令对象传输、有待扩展的无缝高速Web服务访问,OoTxM完全由Java面向对象技术实现,能够容易的移植到其他系统平台。文中系统的说明了OoTxM体系结构的设计与实现,并给出实验模型和测试结果,最后对性能和发展加以分析和总结。