問題タブ [grpc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
7 に答える
49539 参照

spring - gRPC および Protobuf と一緒に Spring Boot を使用する

Spring Boot と一緒に gRPC を使用する例や考えがある人はいますか?

0 投票する
3 に答える
2956 参照

java - gradle を使用せずに grpc-java の例をビルドして実行する

grpc-java の例を作ろうとしています。gradle を使用している場合は確かに簡単ですが、別のビルド システムを使用するプロジェクトに grpc を統合します。protoc、javac、およびjavaのみを使用してサンプルをコンパイルおよび実行する方法を知りたいです。.proto ソースから Java ソースを生成できますが、生成された Java ソースをコンパイルできません。

1000 の組み合わせ (異なるクラスパス) を試しましたが、何も機能しません。

(その他99個のコンパイルエラーは省略)

機能する一連のコマンドを誰かが示すことができますか? ありがとうございました。

Upd:Linuxでこれを行っています。

Upd: 私は SBT を使用していますが、実際には問題ありません。私が本当に理解したいのは、javac を使用して生成された grpc コードをコンパイルする方法です。クラスパスにgrpc-core、grpc-netty、grpc-protobuf、およびgrpc-stubがあると確信しています(実際、この時点では何もわかりません...)。

0 投票する
1 に答える
257 参照

protocol-buffers - 特定のバージョンで必要な依存関係

OS X で libgrpc を nixpkg としてビルドしようとしています。zlib、protobuf >= 3.0、および openssl >= 1.0.2 に依存しています。

これらのバージョンを最小として指定するにはどうすればよいですか? どちらも公式チャンネルに含まれており、両方とも正常にビルドされています。

私は nix にかなり慣れていないので、これは足を濡らそうとする私の試みです。今のところ、これは私が持っているものですdefault.nix:

nix で libgrpc > 0.10 をビルドする方法を探しているか、または要件の最小バージョンを定義して自分で修正できるようにする方法を探しています。

ありがとう!

0 投票する
2 に答える
4340 参照

java - Grpc Java SSL 相互認証

Grpc Client がサーバーで SSL 認証を行うために、GrpcSslContext に何を設定する必要があるか知りたいですか?

現在、次のコードは、サーバーからクライアントへの通常の一方向 SSL 認証で機能しています。

サーバーでは、

クライアントでは、

https://github.com/grpc/grpc-java/blob/master/SECURITY.mdのgRPC によると、

相互認証が必要な場合は、適切な SslContext を作成することでこれをサポートすることもできます。

GrpcSslContexts を正しく初期化したのだろうか?

アドバイス/コメントをお待ちしております。

[アップデート]

さらにトラブルシューティングを行ったところ、CertificateRequest メッセージ ( https://en.wikipedia.org/wiki/Transport_Layer_Security#Client-authenticated_TLS_handshakeに記載) が、クライアント認証を開始するためにクライアントに送信されていないことに気付きました。

私のサーバー ログの抜粋は次のとおりです。

gRPC に固有のバグである可能性があるのではないかと疑い始めています。

0 投票する
1 に答える
939 参照

c++ - gRPC サーバーが 1 つのクライアント接続のみをサポートできるようにする方法

現在、Java アプリ (クライアント) と C++ サーバー間の基本的なプロセス間通信に gRPC を使用することを検討しています。RPC 呼び出しは、明らかにスレッドセーフではない非常に古い C++ コード ベースの機能を使用します。通常、Java クライアントは複数の gRPC サーバー インスタンスを起動し、各サーバー インスタンスとの接続を 1 つだけ持ちます。gRPCサーバーでこれを確実に1つの接続のみを受け入れ、他のすべての接続試行を拒否する方法はありますか. それ以外の場合は、100% 正しいサーバー実装を実現するために、RPC 関数にグローバル ロックを導入する必要があります。

0 投票する
1 に答える
1567 参照

grpc - grpc-java サーバーがすぐにシャットダウンする

次のリンクから grpc-java チュートリアルをクイックスタートするためのすべての指示に従いました。

ビルドは成功しますが、サーバーを実行すると、次のような結果が表示されます。

pradnya@pradnya-VirtualBox:~/grpc-java/examples$ ./build/install/grpc-examples/bin/hello-world-server 2015 年 9 月 7 日 6:36:21 PM io.grpc.examples.helloworld.HelloWorldServer start INFO: サーバーが起動し、50051 でリッスンしています * JVM がシャットダウンしているため、gRPC サーバーをシャットダウンしています *サーバーがシャットダウンしています

0 投票する
1 に答える
378 参照

grpc - 仮想マシンで grpc を使用する

kvm 仮想マシンで grpc の例を使用しています。私の目標は、クライアントとサーバーが共有メモリを介して通信できるように変更することです。私はすでに VM の共有メモリのメカニズムを持っていますが、grpc にいくつか問題があります。私の質問は次のとおりです。

どのファイルを変更する必要がありますか? 既に grpc を使用して hello World の例を実行しており、共有メモリ (../include/grpc++/impl/client_unary_call.h ? class BlockingUnaryCall ?) でプロトコルを使用するために変更したいと考えています。

ありがとう

0 投票する
2 に答える
7060 参照

c++ - クライアントから gRPC サーバーをシャットダウンする方法 (RPC 機能を使用)

C++ アプリ (gRPC サーバー) と Java アプリ (gRPC クライアント) の間のプロセス間通信に gRPC を使用しています。すべてが 1 台のマシンで実行されます。サーバーをシャットダウンするクライアントの可能性を提供したいと考えています。私の考えは、それを行うprotoでサービスにRPC機能を追加することです。

C++ 実装は次のようになります。

ただし、すべての RPC 呼び出しが処理されるまで ShutDown がブロックされるため、デッドロックが発生します。それを実装するエレガントな方法はありますか?

0 投票する
1 に答える
3185 参照

java - grpc サーバーが起動したときの膨大な数の io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entry インスタンス

grpc-javaリモート呼び出しを処理するために、バージョン 0.8.0 サーバーを実行しています。サーバーのロジックは非常に単純で、指定された ID で指定されたデータを DB から取得してredisキャッシュに設定するだけです。

JVM 引数は として設定され-Xss256k -Xmx8Gます。JVM は、サーバーが起動するとすぐに 4 GB (RES 内top) のメモリを使用し、約 400 QPS を処理しました。jmap コマンドを発行jmap -histo:live <pid>し、次のダンプ ファイルを取得しました。

io.netty.buffer.PoolThreadCache$MemoryRegionCache$Entryそこから、約 100MB のメモリを使用する膨大な数のインスタンスがあることがわかりました。grpc( を通信層として使用していることに注意してくださいnetty。) これは異常のようです。それでも、ヒープ内オブジェクトは 4GB のメモリを占有できませんでした。これは、netty.

ヒープ外のメモリ リークはありましたか?

なぜこれが起こるのでしょうか?そして、この問題を解決または診断する方法は?

0 投票する
1 に答える
842 参照

python - grpc get import エラー、未定義シンボルの使用: grpc_google_iam_credentials_create

ubuntu で grpc を使用していますが、run_codegen.sh で生成された *_pb2.py をインポートすると、次の ImportError が発生しました。

フィードバックをお待ちしております。