2016-10-09 5 views
1

ProtoBufを使用してRPC on Javaを実行したいが、各クラスのメタデータを定義する開発オーバーヘッドは必要ありません。 JavaのシリアライゼーションとKryoはこれを行うことができます。 ProtoBufで可能ですか?protoファイルのないProtobuf

.protoファイルのメタデータがバージョニングのような利点を提供しますが、私が制御し、関連性の低いシステム間のRPCについては、Apache SparkがKryoを使用する方法を比較してください。

+0

RPCフレームワークを選択している場合は、[gRPC](http://www.grpc.io/)に興味があるかもしれません。 –

答えて

4

これはできません。 protoファイルのみを書くことに注意してください。クラスはprotocコンパイラによって生成されます。ですから、唯一のオーバーヘッドは、protocをビルドシステムに統合することです(AFAIKにはMavenとGradleプラグインがあります)。

+0

オーバーヘッドは、参照グラフのクロージャを含む、各クラスから格納するために正確な状態をトレースする必要があることです。 Java SerializationまたはKryoでは、これを行う必要はありません。 –

関連する問題