現時点では、ZeroMQ を使用してプロトコル バッファ ペイロードを交換するソリューションがあります。シリアライゼーションのプロトコル バッファ方式はそのままにしておく必要がありますが、ZMQ をより便利なオプションに置き換えることができます。ZMQ で満足できない点は次のとおりです。
これは Java 側で JNI を使用しており、複雑なマルチスレッドのシナリオで JNI に悩まされたことがあります。私はできる限りそれを排除しようとします。
キューイングは必要ありません。rpc が必要なだけです。
私の要件(主にZeroMQでカバーされています)は次のとおりです。
32/64 ビット *nix、Windows、MacOS のサポート。
Java、C++、C# を主にサポートし、Python、Ruby などをサポートするとよいでしょう。
言語サポートは、ネイティブ コードのラッピングではなく、言語のネイティブ実装によって提供する必要があります。
ハイパフォーマンス。
Non Viral ライセンス、GPL、AGPL などはありません。
メッセージング用のJava実装がJNIを使用していない場合、ThriftをTCP経由のトランスポート層として使用することを考えています(サポートしていると思います)。
このセットアップで ZMQ 以外に考えられるオプションは何ですか?