問題タブ [thrift-protocol]
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.
thrift - Apache Thrift: C++ でトランスポートを自動的に開閉する
背景:同じ静的ライブラリを使用する小さな C++ プログラムが多数あります。静的ライブラリとは別のコンピューターで小さな C++ プログラムを実行できるように、thrift を中間層として実装しています。私は C++ プログラムを変更できないので、オリジナルのように見える「偽の」静的ライブラリを作成していますが、実際には本物の静的ライブラリを呼び出すリサイクル クライアントです。
問題: C++ プログラムがライブラリを開くときにソケットを自動的に開き、プログラムが終了するときにソケットを閉じるように、スタティック ライブラリを作成するにはどうすればよいですか??
通常、リサイクル クライアントは、最初にソケットを開き、最後にソケットを閉じる main メソッドを使用します。すべてのメソッド呼び出しの前にソケットが開いているかどうかをライブラリにチェックさせることができますが、ソケットを閉じる方法がわかりません。開けたままでも問題ありませんか?
java - org.apache.thrift7.TBase クラスが見つかりませんでした
次のmavenコマンドを使用してトポロジを実行中にエラーが発生しました:
次のコマンドを使用しようとすると:
エラーも出力もありません。トポロジをストームに送信した後でも、次を使用します。
このトポロジは ui(localhost:8080) に表示されません。
java - org.apache.thrift7.TBase と org.apache.thrift.TBase の比較
この種のパッケージを含む jar を見つけることができません。誰でも、このクラスとパッケージを見つけることができるlibthrift Link jar を教えてください。このパッケージを含む jar が見つかりませんでした。Javaファイルを実行するたびに、次の期待がスローされます。
c#-4.0 - c# での Apache Thrift Client ランタイムの問題
私は、Apache THRIFT RPC フレームワークを使用して構築された C# で記述されたクライアント - サーバー アプリケーションに取り組んでいます。
サービス定義を含むいくつかの IDL ファイル (.thrift ファイル) を作成しました。これらのサービスはサーバーに実装されており、クライアントから呼び出されています。
IDL ファイルの構造体とサービス定義の例を以下に示します。
構造体ViewColumn {
}
構造体 FormView {
}
サービスフォームクエリ{
}
このようなサービスは、アプリケーション全体で多数定義されています。
サーバーでは、サービスは次のように実装されています
クライアントとサーバーの構成は次のとおりです。
クライアント 1. TSocket 2 TBinaryprotocol 3. TMultiplexedProtocol
サーバー 1. TserverSocket 2. Tmultiplexedprocessor 3. TbinaryProtocol
以下のようにクライアントからサービスを呼び出すと
var f = Queries.FetchFormView()
問題が発生しました。
- FetchFormView() は null を返します
- system.OutOfMemoryException
これらのエラーのスタック トレースを以下に示します。
エンタープライズ レベルのアプリケーションで Apache THRIFT を使用した経験がある場合は、洞察、ソリューション、アイデア、および最良のアプローチを提供してください。
これは重大な状況です。どんな助けでも大歓迎です。
前もって感謝します
ロミ
更新 - 26/7/13
私は解決策を即興で作りました。すべてのサービス呼び出しの前に、トランスポート オブジェクトとプロトコル オブジェクトを閉じて破棄し、再作成しています。これはサーバーに接続する非効率的な方法ですが、機能しています。各サービスの呼び出しを非同期にすることを考えています。おそらくそれはより良い解決策になるでしょう。
ubuntu - Apache thrift のビルド中にエラーが発生しました
Linux マシンで apache trift をビルド (作成) しようとしましたが、ビルド プロセス中に次のエラーに直面しました。
誰か助けてくれませんか?私は実行していて、必要なライブラリがUbuntu 10.04 LTS
インストールされていることも確認しました
c++ - C ++スリフトクライアント:長さのないバッファを送信する方法は?
C++ クライアント アプリケーションと Java サーバーがあります。クライアント アプリはサーバーに接続し、データを送信します。
たとえば、整数値を送信します。
サーバー側のコードは次のとおりです。
問題は、読み取り整数をもう 1 つ追加すると (コメントを参照)、問題なく動作することです。まず、長さ (4 バイト) を読み取り、次にデータ - 整数を読み取ります。
クライアントが長さ (int) データ (int) を送信することを意味します。
ただし、サーバーはデータのみを読み取ります。
どうすればデータのみを送信できますか? 別のthriftトランスポートまたはプロトコルを使用するか、非thriftライブラリを使用できます...
thrift - Thrift RPC ヘッダー
Thrift には、リモート呼び出しを行うときにトークン (認証トークン文字列など) を渡すメカニズムがありますか? 私が見ることができる唯一のオプションは、メソッド署名に認証トークン文字列を含めることですか?
java - BlackBerry アプリケーション用の Apache Thrift と JavaME
開始する新しいアプリケーションで Apache Thrift を使用することを検討しています。ただし、Thrift が JavaME 環境でどの程度うまく機能するかについては、いくつかの懸念があります (Thrift のドキュメントは非常に悪いため)。サーバー、iPhone、Android など、ほとんどの環境で動作するサンプル アプリケーションがありますが、BlackBerry (JDE 5.0.0) は動作しません。BlackBerry Java アプリケーションでの実行に成功した人はいますか?
ruby - スリフト ルビー ジェム
私の人生では、「gem install thrift」を正常に実行することはできません.gemのネイティブ拡張を構築するときに失敗します。これは出力です:
(...)
Web で同様のエラーをたくさん見ましたが、解決策が見つかりませんでした。rvm/ruby-2.0.0-p247 を新規インストールして、OS X 10.9 を実行しています。何か案は?ありがとう。
python - Thrift Client による非同期メッセージの受信
Apache Thriftを使用してプロトコルを定義します。クライアントがサーバーから非同期メッセージを受信できるようにしたいと考えています。
サーバーに接続し、同期および非同期メッセージをサーバーに送信する方法は知っていますが、サーバーから接続されたクライアントに非同期メッセージを送信する方法がわかりません。
(Python または Erlang コードが望ましいですが、他の言語でも構いません)