C#とJavaでGRPCを使いたいです。C#とJava間の通信
C#はサーバーとして動作し、Javaはクライアントとして動作する必要があります。
私はWindowsユーザーであり、C#とJava用のprotoファイルの生成方法はわかりません。
ウェブサイトでは、特定の言語のチュートリアルしか見つかりませんでしたが、異なる言語のチュートリアルは見つかりませんでした。
C#とJavaでGRPCを使いたいです。C#とJava間の通信
C#はサーバーとして動作し、Javaはクライアントとして動作する必要があります。
私はWindowsユーザーであり、C#とJava用のprotoファイルの生成方法はわかりません。
ウェブサイトでは、特定の言語のチュートリアルしか見つかりませんでしたが、異なる言語のチュートリアルは見つかりませんでした。
これらのアプリケーションが通信する最も簡単な方法は、ソケットを使用してクライアントサーバーアプリケーションを作成することです。サーバーとして機能するC#は、指定されたポートでクライアント接続を待機する必要があります。クライアントは、C#アプリケーションがリッスンしている同じポート上で接続要求を送信する必要があります。これらのアプリケーションがネットワーク言語で接続されていることはもはや意味のないものです。アプリケーション間でデータを簡単に渡すことはできますが、各アプリケーションで異なる方法でデータを処理することもできます。お役に立てれば。
GRPCがすべきこと。 –
C#とJavaの両方でgRPCを使用するのは、それらを個別に使用するのと同じくらい簡単です。あなたがする必要があるのは、それぞれ同じコードを生成するのに同じ.proto
ファイルを使用することだけです。 .proto
は、C#とJavaの両方が互換性があるメソッドとメッセージを定義します。
例の各セットを見ると、それぞれ同じ.proto
(つまり、helloworld.proto
またはroute_guide.proto
)が使用されています。この例は言語間で互換性があります(つまり、C#helloworldサーバーはJava helloworldクライアントと通信できます)。
protoファイルでgRPCサービスを指定するのは簡単です。私は、例を見れば、それが十分明確になると思うだろう。プロトメッセージの定義の詳細については、protobuf documentationを参照してください。
ZeroMQのようなものを考えてみましょう。生のソケットプログラミングよりはるかに簡単です。 –
ZeroMQとGRPCの違いは何ですか? –
RabbitMQはどうですか? ZeroMQ –