ProtoBufを使用してRPC on Javaを実行したいが、各クラスのメタデータを定義する開発オーバーヘッドは必要ありません。 JavaのシリアライゼーションとKryoはこれを行うことができます。 ProtoBufで可能ですか?protoファイルのないProtobuf
.proto
ファイルのメタデータがバージョニングのような利点を提供しますが、私が制御し、関連性の低いシステム間のRPCについては、Apache SparkがKryoを使用する方法を比較してください。
ProtoBufを使用してRPC on Javaを実行したいが、各クラスのメタデータを定義する開発オーバーヘッドは必要ありません。 JavaのシリアライゼーションとKryoはこれを行うことができます。 ProtoBufで可能ですか?protoファイルのないProtobuf
.proto
ファイルのメタデータがバージョニングのような利点を提供しますが、私が制御し、関連性の低いシステム間のRPCについては、Apache SparkがKryoを使用する方法を比較してください。
これはできません。 protoファイルのみを書くことに注意してください。クラスはprotoc
コンパイラによって生成されます。ですから、唯一のオーバーヘッドは、protoc
をビルドシステムに統合することです(AFAIKにはMavenとGradleプラグインがあります)。
オーバーヘッドは、参照グラフのクロージャを含む、各クラスから格納するために正確な状態をトレースする必要があることです。 Java SerializationまたはKryoでは、これを行う必要はありません。 –
RPCフレームワークを選択している場合は、[gRPC](http://www.grpc.io/)に興味があるかもしれません。 –