問題タブ [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 投票する
8 に答える
21042 参照

go - golang protobuf は、生成された json タグから omitempty タグを削除します

json プロキシで google grpc を使用しています。何らかの理由omitemptyで、*.pb.go ファイルで生成された構造体からタグを削除する必要があります。

このようなプロトメッセージがある場合

生成された構造体は次のようになります

omitemptyしかし、生成された構造体からタグを削除する必要があります。これどうやってするの?

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

c++ - VisualStudio 2013 での Google gRPC (C++) ビルド。リンク エラー

Visual Studio で自分のプロジェクトに gRPC をセットアップしようとしています。ここで説明されているようにすべてを行いました: http://www.infopulse.com/blog/grpc-framework-by-google-tutorial/。(helloworld の例をコンパイルしようとしています -> Git grpc/examples/cpp/helloworld)

コンパイル中に私が得ている主な問題:

未解決の外部シンボル "void _cdecl grcp::FillMetadata
... など。

protobuf に問題はありません (すべて動作) OpenSSL、zlib - OK。

私の内容:

  • $(SolutionDir)..
  • $(SolutionDir)..\include
  • $(SolutionDir)..\third_party\protobuf\src
  • $(SolutionDir)\packages\grpc.dependencies.zlib.1.2.8.10\build\native\include
  • $(SolutionDir)\packages\grpc.dependencies.openssl.1.0.204.1\build\native\include
  • $(SolutionDir)\packages\gflags.2.1.2.1\build\native\include
  • $(SolutionDir)\packages\gtest.1.7.0.1\build\native\include

追加の依存関係:

  • libprotobuf.lib
  • grpc.lib
  • gpr.lib
  • libeay32MDd.lib
  • ssleay32MDd.lib

正しいフォルダ内のすべて。

ここで何が欠けていますか?たぶん.sln、すべての依存関係リストを備えた既に作業中のプロジェクトを持っている人もいますか? .libこの問題は、ここで見逃している問題に関連しているに違いないことはわかっています。

0 投票する
8 に答える
42021 参照

javascript - gRPC で定義された API を Web ブラウザーにもたらす方法

gRPC マイクロサービス用の Javascript/HTML GUI を構築したいと考えています。gRPC はブラウザー側でサポートされていないため、web-socket を使用して node.js サーバーに接続し、grpc 経由でターゲット サービスを呼び出すことを考えました。これを行うためのエレガントなソリューションを見つけるのに苦労しています。特に、gRPC ストリームを使用してマイクロサービス間でイベントをプッシュするためです。フロントエンドと node.js サーバーの間で通信するためだけに、2 つ目の RPC システムが必要なようです。これは、多くのオーバーヘッドと維持しなければならない追加のコードのようです。

誰かがこのようなことをした経験があるか、これをどのように解決できるか考えていますか?

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

c++ - C++ アプリケーションで Bigtable からゴーアウェイを取得するのはなぜですか?

gRPC Bigtable クライアントを使用して、C++ で記述されたデータ インポート ジョブを実行しています。一定期間後、1M 以上のレコードが挿入されgoawaymax_ageメッセージが表示されます。これは私の初めての Bigtable アプリケーションであり、初めての長期実行アプリケーションであるため、これgoawayが作成される挿入の数や接続時間に固有のものなのか、それがgoaway実際に何なのかはわかりません。ある種のタイムアウトに達しているようです。gRPC C++ コード、具体的には grpc::Channel を見ると、タイムアウト コントロールが表示されないため、DB 接続を再度開く以外に、その問題に対処する方法がわかりません。

gRPC クライアントから得られる正確なエラー メッセージは次のようになります。

gRPC と protobuf は、2016 年 1 月 22 日のメインラインからソースからビルドされているため、クライアント コードは最近のものです。

Bigtable が を送信する理由について何か提案はありますgoawayか? grpc::Channelまた、Bigtable との通信時にタイムアウトしないようにすることは可能ですか?

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

python - Ruby クライアントで gRPC Python サーバーを使用する際のトラブル

そのような構成では gRPC は機能しないようです。最小限の動作しない例:

プロトブフの仕様:

スタブの生成

サーバー (helloworld の例に従います)

Python クライアント (正常に動作)

Ruby クライアント (サーバーを無視しているように見える)

Python クライアントは、意図したとおりに「got test」を出力します。Ruby クライアントが例外で終了する

バージョン:gem list出力google-protobuf (3.0.0.alpha.3)およびgrpc (0.12.0) pip list出力protobuf (3.0.0a3)およびgrpcio (0.12.0b0)

0 投票する
4 に答える
13168 参照

c# - GRPC サービスはどのようにホストされるべきですか?

Linkに示されている例を使用して、C# で GRPC サーバーを作成しました。ここで、次のことを実現するために、このサーバーをどのようにホストする必要があるかを理解したいと思います。

  • このサーバーをコンソール アプリケーションにするか、Windows サービスにするか。それをWindowsサービスにすると、サービスの更新が面倒になり(これは大きなマイナスです)、コンソールアプリにすると、更新にはexeをシャットダウンするだけで済みます。しかし、それには、誤って同じものを閉じるという代償が伴います。他に良い方法はありますか?
  • IIS では、サイトを LB から削除し、Web サイトを停止して更新を実行するだけなので、この問題は発生しませんが、GRPC は IIS の一部ではないため、これを機能させる方法がわかりません。

より良いアーキテクチャへの参照を歓迎します。