問題タブ [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.
go - golang protobuf は、生成された json タグから omitempty タグを削除します
json プロキシで google grpc を使用しています。何らかの理由omitempty
で、*.pb.go ファイルで生成された構造体からタグを削除する必要があります。
このようなプロトメッセージがある場合
生成された構造体は次のようになります
omitempty
しかし、生成された構造体からタグを削除する必要があります。これどうやってするの?
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
この問題は、ここで見逃している問題に関連しているに違いないことはわかっています。
javascript - gRPC で定義された API を Web ブラウザーにもたらす方法
gRPC マイクロサービス用の Javascript/HTML GUI を構築したいと考えています。gRPC はブラウザー側でサポートされていないため、web-socket を使用して node.js サーバーに接続し、grpc 経由でターゲット サービスを呼び出すことを考えました。これを行うためのエレガントなソリューションを見つけるのに苦労しています。特に、gRPC ストリームを使用してマイクロサービス間でイベントをプッシュするためです。フロントエンドと node.js サーバーの間で通信するためだけに、2 つ目の RPC システムが必要なようです。これは、多くのオーバーヘッドと維持しなければならない追加のコードのようです。
誰かがこのようなことをした経験があるか、これをどのように解決できるか考えていますか?
c++ - C++ アプリケーションで Bigtable からゴーアウェイを取得するのはなぜですか?
gRPC Bigtable クライアントを使用して、C++ で記述されたデータ インポート ジョブを実行しています。一定期間後、1M 以上のレコードが挿入されgoaway
、max_age
メッセージが表示されます。これは私の初めての Bigtable アプリケーションであり、初めての長期実行アプリケーションであるため、これgoaway
が作成される挿入の数や接続時間に固有のものなのか、それがgoaway
実際に何なのかはわかりません。ある種のタイムアウトに達しているようです。gRPC C++ コード、具体的には grpc::Channel を見ると、タイムアウト コントロールが表示されないため、DB 接続を再度開く以外に、その問題に対処する方法がわかりません。
gRPC クライアントから得られる正確なエラー メッセージは次のようになります。
gRPC と protobuf は、2016 年 1 月 22 日のメインラインからソースからビルドされているため、クライアント コードは最近のものです。
Bigtable が を送信する理由について何か提案はありますgoaway
か? grpc::Channel
また、Bigtable との通信時にタイムアウトしないようにすることは可能ですか?
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)
c# - GRPC サービスはどのようにホストされるべきですか?
Linkに示されている例を使用して、C# で GRPC サーバーを作成しました。ここで、次のことを実現するために、このサーバーをどのようにホストする必要があるかを理解したいと思います。
- このサーバーをコンソール アプリケーションにするか、Windows サービスにするか。それをWindowsサービスにすると、サービスの更新が面倒になり(これは大きなマイナスです)、コンソールアプリにすると、更新にはexeをシャットダウンするだけで済みます。しかし、それには、誤って同じものを閉じるという代償が伴います。他に良い方法はありますか?
- IIS では、サイトを LB から削除し、Web サイトを停止して更新を実行するだけなので、この問題は発生しませんが、GRPC は IIS の一部ではないため、これを機能させる方法がわかりません。
より良いアーキテクチャへの参照を歓迎します。