7

通信に CORBA を使用して Java で記述されたクライアント/サーバー アプリケーションがあります。使用される ORB は、Java6 プラットフォームによって提供される orbd です。Java サーバーの実装を C++ で記述された別のものに置き換える必要があります。問題は、CORBA ライブラリのフリー ソース実装のうち、どれがこの ORB とより適切に相互運用できるかということです。Java ORB を置き換えて、C++ ライブラリが提供する ORB も使用する必要がありますか?

目的は、すでに機能しているサーバーを新しい C++ 実装に置き換えるときに、簡単かつスムーズに移行できるようにすることです。他に考慮すべきことはありますか?

4

4 に答える 4

7

Java と C++ の相互運用性のために CORBA を使用していないのは長いことなので、私の答えは少し古くなっているかもしれません。

omn​​iORB (C++) と JacORB (Java) を組み合わせると非常にうまく機能することがわかりました。これらのライブラリを Google で検索して、まだサポートされているかどうかを確認してください。

また、「ネイティブ」Java CORBA で大きな問題が発生したことも覚えています (Sun Bugs Parade には多くのバグがあり、何年も前から開いています...)。 .

于 2009-01-13T22:49:44.253 に答える
3

TAO は間違いなく最も商業的に使用されているオープン ソース C++ ORB です。JacORB を Java ORB として使用すると非常にうまく機能しますが、JDK ORB も使用できます。ソフトウェアが現在 JDK ORB で動作する場合、TAO で動作しない理由はありません。問題が発生した場合は、JDK ORB を JacORB に置き換えてください。

ああ、前回の投稿についてですが、ZEN Java ORB は死んでおり、もはや開発されていません。Java の場合、JDK ORB では不十分な場合は JacORB を使用する必要があります。

商用サポートが必要な場合は、それも利用できます。サポート ニーズ (TAO と JacORB の両方) には Remedy IT ( http://www.remedy.nl ) を使用します。

于 2009-04-03T17:14:23.257 に答える
1

C++

ACE/TAO ORB をご覧になりましたか。
https://www.dre.vanderbilt.edu/~schmidt/TAO.html

ACE は基本的に OS 抽象化レイヤーです。
TAO は、この抽象化の上に構築された CORBA ORB であるため、クロスプラットフォームです。

ジャワ

TAO の Java バージョンは ZEN です:
http://www.zen.uci.edu/

技術的には、ORB が同じである必要はありません。CORBA プロトコル/仕様に準拠している限り、それらは相互運用可能である必要があります。したがって、ZEN を使用することもできますが、JacORB を使用することも同様に簡単です。

于 2009-01-23T13:19:11.627 に答える
1

Mico で記述された C++ サーバーに大量のデータをプッシュ/プルする Java クライアントがいくつかあります。それらに問題はありません。

ロード バランシング機能のために Visibroker も使用していますが、まもなく廃止されます。

于 2009-01-22T11:25:24.897 に答える