打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Java与Python的CORBA解决方案

作者:网络

因为最近及以后一些项目开发语言和环境逐步要向Java、Python上切,所以过年这几天就花了点功夫研究了一下Java和Python,特别是对它们之间的互操作进行了研究。

由于我在HW从事电信系统开发,用CORBA用得比较多,所以就着重研究了一下两者在CORBA方面的解决方案。

具体来讲,做了以下实验:

实验环境:DUO2330 2x1.6GHz, 2G, WindowsXP SP3, JDK1.6.0, Python2.6/omniORBpy-3.3

第一阶段:

* 用Python/omniORBpy实现CORBA服务端

* 用Python/omniORBpy实现CORBA客户端

* 使用omniNames名字服务器实现Python CORBA服务的发布和调用

 

第二阶段:

* 用Java/org.omg.CORBA实现CORBA服务端

* 用Java/org.omg.CORBA实现CORBA客户端

* 使用jdk/tnameserv名字服务器实现Java CORBA服务的发布和调用

 

第三阶段:

* 使用ACE/TAO的nameservice实现Python CORBA服务的发布和调用

* 使用jdk/tnameserv名字服务器实现Python CORBA服务的发布和调用

* 使用Python CORBA客户端调用Java CORBA服务

* 使用Java CORBA客户端调用Python CORBA服务

 

第四阶段:

* 测试Python CORBA客户端调用Python CORBA服务的执行效率

* 测试Python CORBA客户端调用Java CORBA服务的执行效率

* 测试Java CORBA客户端调用Python CORBA服务的执行效率

* 测试Java CORBA客户端调用Java CORBA服务的执行效率

 

实验结果如下:

一、解决方案完整性:

* 使用Python/omniORBpy可以无障碍实现服务器、客户端、名字服务器 - OK

* 使用Python/omniORBpy可以正确编译TMF814指定的标准IDL文件 - OK

* 使用Java/org.omg.CORBA可以无障碍实现服务器、客户端、名字服务器 - OK

* 使用Java/org.omg.CORBA可以正确编译TMF814指定的标准IDL文件 - OK

 

二、互操作性:

* Python/omniORBpy可以正常使用ACE/TAO的nameservice - OK

* Python/omniORBpy可以正常使用jdk/tnameserv名字服务器 - OK

* 使用Python CORBA客户端调用Java CORBA服务 - OK

* 使用Java CORBA客户端调用Python CORBA服务 - OK

 

三、执行效率:

1、Java客户端调用Java CORBA服务:

  69秒/100000次, 1449次/秒

  CPU占用率: server=32%, client=27%

2、Java客户端调用Python CORBA服务:

  40秒/100000次, 2500次/秒

  CPU占用率: server=11%, client=43%

3、Python客户端调用Java CORBA服务:

  34秒/100000次, 2941次/秒

  CPU占用率: server=35%, client=9%

4、Python客户端调用Python CORBA服务:

  11秒/100000次, 9091次/秒

  CPU占用率: server=23%, client=18%


四、初步结论:

* Python/omniORBpy和Java/org.omg.CORBA都可以提供CORBA应用解决方案,但从技术完整性和社区资源来看,Java的支持要好于Python。

* Python/omniORBpy开发效率要高于Java,代码更简洁。

* Python/omniORBpy和Java/org.omg.CORBA的互操作性很好。

*执行效率上Python/omniORBpy明显高于Java/org.omg.CORBA,纯Python/omniORBpy(客户端、服务器都使用Python实现)效率比纯Java/org.omg.CORBA的效率高627%!----不知如果使用INOAOrbix或VisiBroker效率会不会明显提升?----有经验的朋友可以帮忙解答一下这个问题。

 

说明:以上是我初步的实验结论,因为也是刚接触CORBA不久,所以可能有所偏颇,欢迎各位专家共同探讨!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Inprise Application Server
使用JAVA开发CORBA应用
RMI-IIOP
Java 8 中所有的包列表及介绍
Java Endorsed Standards Override Mechanism
解读COM与CORBA
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服