CORBA Programming with TAO - 9.Postscript(后记)
摘要:
这是整个系列的最后一篇,对整个系列及该系列未涵盖的内容进行了总结,同时对CORBA及分布式对象计算技术的发展状况进行了简单分析。
正文:
CORBA本身是一个复杂的体系,本系列只是初步介绍了用TAO进行分布式CORBA应用的基础知识,并有选择性地略去了部分内容(如DynAny、POA Policy、Persistent Object等,关于POA Policy的相关内容可阅读参考文献5),此外,还有一些主题(如Implementation Repository、Interface Repository、Trading Service、Notification Service等)及很多实际应用中需要注意的问题也是本系列没有覆盖的,还需要大家通过深入研究和实践来掌握。
就目前来看,CORBA规范已逐步趋于成熟,并仍在不断发展、改进,一些已有的组成部分被更新、完善的同时,也有一些新的与分布式应用相关的内容被OMG组织纳入其研究范围,如:异步通信机制、针对嵌入式和实时系统等具体领域的CORBA规范、反射机制、与EJB/SOAP等的互通等,CORBA正在随着研究人员研究的深入,变得越来越庞杂。
与此同时,由于2.x规范中定义的CORBA架构存在一些局限性,其中最为典型的问题是:CORBA不支持在不破坏向前兼容的情况下为对象增加新的接口,即不能在不改变接口定义的情况下为对象增加新的功能。为此,OMG在CORBA3中引入了CORBA Component Model(CCM)以在一定程度上解决这一问题。
CCM是基于EJB和COM提出的一种新的组件模型,它在结构上更接近EJB。在CCM中,Component是支持多个接口的、可配置且可导航(即通过一个接口查询到其它接口,类似于COM中的IUnknown::QueryInterface,这在CORBA 2.x中是不可能实现的)的二进制单元。CCM一定程度上改变了我们进行CORBA应用设计的模式,使得我们由以接口设计为中心转为以组件(Component)设计为中心。
由于CCM体系十分复杂,涉及组件容器、组件实现描述语言、组件打包与部署、与EJB的互通等许多方面,虽然CCM规范发布已有数年,目前仅有少数几个部分支持CCM的商业CORBA实现面世, 著名ORB提供商BEA、IONA等已宣布将支持CCM,但相关产品尚未发布,此外,也有一些开源项目,如CIAO(Component Integrated
ACE ORB)、OpenCCM等已取得一定进展,已有一些试验产品可供研究参考。
此外,CORBA提供“至多一次”的语义来确定一次访问成功与否,客户端发起一次调用,在服务器端也只能引起一次反应。CORBA没有提供功能来检查一次访问究竟是否成功的修改了要访问的对象的状态,因为缺乏这样的机制,使得提供“故障恢复”机制变得十分困难,因此CORBA把本来可能恢复的故障处理成不可恢复的。
为此,一些研究者开发出了用于分布式对象计算的新模型,如ICE就是在CORBA的基础上为简化应用复杂度,并克服CORBA存在的没有多重接口(该问题随着CCM的提出已被解决)、没有异常继承等方面存在的问题而提出的一个新的应用模型。可以相信随着研究的深入,CORBA或相关的分布式对象计算技术将变得更加易用也更加强大(当然,对于CORBA实现提供商或开源CORBA实现提供者来讲,要做的工作也越来越多)。
参考:
分享到:
相关推荐
CORBA Programming with TAO,整理自“大卫的思维空间”,内容简洁,快速入门。格式制作为CHM,方便阅读。
8. **JEP 320: Remove the Java EE and CORBA Modules**:移除了不再维护的Java EE和CORBA模块,使JDK更加精简。 9. **其他改进**:还包括性能优化、错误修复、新的API添加等。 Red Hat是一个知名的Linux发行版和...
《CORBA Programming with TAO》是一篇专门为CORBA编程初学者准备的文章,它详细介绍了如何使用TAO(The ACE ORB)这一实现CORBA标准的开源ORB(对象请求代理)。TAO是ACE(Adaptive Communication Environment)...
8. **JEP 320:移除Java EE和Corba模块**:为了简化JDK,不再包含Java EE和Corba相关的模块,但这并不意味着Java不再支持企业级开发,而是鼓励使用更现代的微服务架构。 9. **JEP 321:HTTP/2和TLS的HTTP/2客户端**...
《Glassfish-CORBA-Source-3.1.0-b021与Fedora数据传输对象解析》 Glassfish-CORBA-Source-3.1.0-b021.zip是一个压缩包,其中包含了Glassfish服务器的一个特定版本的CORBA(Common Object Request Broker ...
axis2-corba-1.5.4.jar axis2-fastinfoset-1.5.4.jar axis2-java2wsdl-1.5.4.jar axis2-jaxbri-1.5.4.jar axis2-jaxws-1.5.4.jar axis2-jibx-1.5.4.jar axis2-json-1.5.4.jar axis2-kernel-1.5.4.jar axis2-metadata...
axis2-corba-1.5.4.jar axis2-fastinfoset-1.5.4.jar axis2-java2wsdl-1.5.4.jar axis2-jaxbri-1.5.4.jar axis2-jaxws-1.5.4.jar axis2-jibx-1.5.4.jar axis2-json-1.5.4.jar axis2-kernel-1.5.4.jar axis2-metadata...
9. **其他改进**: 如JEP 331(Flight Recorder)和JEP 332(JFR Event Streaming),提供了低开销的监控和诊断工具,以及实时事件流。 下载并安装`jdk-11.0.13_windows-x64_bin.zip`后,开发者可以使用其中的`javac...
./configure --prefix=/path/to/install --with-tao --with-log-support ``` 2. 编译: 使用`make`命令开始编译过程,这可能会花费一些时间: ```bash make -j 4 ``` `-j 4`参数表示使用4个线程并行编译,...
axis2-corba-1.7.4.jar axis2-fastinfoset-1.7.4.jar axis2-java2wsdl-1.7.4.jar axis2-jaxbri-1.7.4.jar axis2-jaxws-1.7.4.jar axis2-jibx-1.7.4.jar axis2-json-1.7.4.jar axis2-kernel-1.7.4.jar axis2-metadata...
8. **JEP 320:移除Java EE和Corba模块**:这些模块不再包含在JDK中,以减少JDK的体积并提高性能。 9. **JEP 318:缩短GPL Class-Path Exception**:Oracle JDK的GPL Class-Path Exception的期限被缩短,意味着使用...
6. **删除Java EE和Corba模块(JEP 320)**:移除了不再维护的Java EE和Corba相关模块,简化了JDK的体积和维护负担。 7. **其他改进**:包括对JVM的优化,如增强G1垃圾收集器的性能,以及对Java内存模型和并发API的...
- 移除了Java EE和Corba模块,简化了平台。 - 引入了HTTP客户端API(java.net.http),方便开发人员进行网络通信。 - 新增了动态类型语言支持,如lambda表达式和方法引用来提高代码的简洁性。 - 改进了字符串...
JacORB,全称为 Java Object Request Broker,是一个开源的、完全符合CORBA(Common Object Request Broker Architecture)规范的Java ORB(Object Request Broker)。它允许不同计算机上的对象相互通信,仿佛它们都...
官方版本,亲测可用
- **Corba IDL**:Corba接口定义语言(IDL)用于定义分布式对象的接口。Ant能帮助转换这些IDL文件为Java代码,使用`org.omg.CORBA_2_3.idl`任务。 - **IDLC Task**:Ant提供了`idlc`任务,可以调用 OMG 的 IDL ...
- **JEP 320: Removal of the Java EE and CORBA Modules**:移除了对Java EE和CORBA的支持,简化了JDK。 - **JEP 310: Application Class-Data Sharing**:提高了启动速度,通过在多个JVM之间共享类数据。 - **...
在“CORBA-sample-of-java.rar_corba”这个压缩包中,包含了一个基于Java实现的CORBA实例,以及一个名为“基于Java的CORBA实验参考.mht”的文档,用于指导如何编译和运行这个程序。 **CORBA的核心概念** 1. **ORB...
Ice,全称是“Instantiation's Corba eXtension”,是由Instantiation公司开发的一种轻量级、高性能的分布式对象计算框架,它提供了类似CORBA的功能,但更简单易用且效率更高。 在压缩包内的文件名称列表中,我们...
《Advanced CORBA Programming with C++》是一本专为高级CORBA编程者设计的书籍,由Addison-Wesley出版社出版。这本书深入探讨了CORBA(Common Object Request Broker Architecture,公共对象请求代理架构)的高级...