問題タブ [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.

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

php - Apache Thrift API と通信するための PHP クライアント

私はPHP開発者で、Apache Thrift APIを使用して別のサーバーと通信するサイトで作業しているため、PHPでThrift APIと通信するために使用できる既存のクラスまたは方法があることを知りたい. Tsocket を使った Python で書かれたサンプルを見たことがありますが、PHP に Tsocket クラスがあるかどうかはわかりません。したがって、誰かがそのような作業を行った場合は、サンプルを投稿するか、PHP でthrift API クライアントを実装するために使用できるクラスについて教えてください。

みんなの努力に前もって感謝します。

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

php - Python の thirft.apache.org サンプル クライアントのような PHP ベースのthrift API クライアント

http://thrift.apache.org/にある thirft.apache.org サンプル クライアントのような PHP ベースのthrift API クライアントを Python で書きたいと思います。

私はこのコードを書きます:

http://thrift.apache.org/にある python クライアント コードの正しい代替方法は次のとおりです。

私はそれに慣れていないので、何か提案をしてください。

ありがとう

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

php - PHPベースのThrift ClientのThriftサービス

thrift .tar ファイルをダウンロードし、 lib/php/src フォルダーを取得して、名前を thrift に変更しました。次に、PHP Thrift Client を書き込むための PHP ファイルに、次のコードがあります。

実行しようとすると、ファイルがないというエラーが表示されMyServiceます。そして、私がそれを持っていないのは正しいです。そのファイルをどこから入手できるか、またはそのようなサービスの書き方をどこから知ることができるかを知りたいです。私はApache Thriftに精通していないので、それを求めています。私が何か間違ったことをしているのか、サービスファイルを書く方法とその内容を誰かが知っているかどうか教えてください。PHP Thriftクライアントを書くだけで、ある種のコンパイラが必要になりますか?

私の質問に時間を割いていただきありがとうございます。

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

python - Python のノンブロッキング Thrift サーバー

以下のコード スニペットでは、非ブロッキングのリサイクル サーバーを Python で作成しようとしています。

Python クライアントが上記のコード スニペットを持つサーバーに接続しようとすると、次のエラーが発生します。このエラーの原因を教えてください。おそらく私は何かが欠けています。

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

java - TProtocol 間の変換

TBinaryProtocol から TSimpleJSONProtocol に変換して、記録されたバイナリ リサイクル リクエストのストリームをより人間が読める形式で表示できるようにしたいと考えています。私はストリーム内のサービス リクエストに特に関心があるため、TDeserializer を使用することはできません (また、使用されている特定の Thrift サービス/オブジェクトに対してコードを汎用的に保ちたいと考えています。

Thrift オブジェクトを構築する中間ステップなしで、TBinaryProtocol オブジェクトを TSimpleJSONProtocol に直接変換する方法はありますか?

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

thrift - Python Thriftサーバーでクライアント情報を取得するには?

TThreadPoolServer を使用している Python Thrift サーバーがあります。私の質問は、サーバー サービス ルーチンの 1 つでクライアント情報を取得する方法です。1 つの方法は、クライアント側からサービスを呼び出すときにクライアント情報を渡すことです (つまり、引数の 1 つ)。これを行うための他のアプローチや API はありますか?

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

php - phpcassa接続プール

次のようなインスタンス化で3つのphpcassa接続プールを設定するデータアクセスクラスがあります。

最近、zendのphpサーバーのコードトレース機能を使用して、このクラスのパフォーマンス監査を少し行いましたが、これら3つの接続プールのセットアップに約100ミリ秒かかることに気付きました。このクラスのインスタンス化ごとに各接続が1回または2回しか使用されないことを考えると、接続のセットアップに負けるのはかなりの時間です。

これらの接続プールを一度構築して、クラスのインスタンス化間で共有できるようにする巧妙なトリックを知っている人はいますか?たぶん、それを行うための簡単な方法がいくつかあります。それは、より高度なPHP開発者にすぐに発生しますか?

更新: APCを使用して接続プールを「正常に」キャッシュし、永続的な接続の詳細を読み、phpcassaのconnection.phpファイル(59行目v 0.8.a.2)が次のようになっていることを発見しました。

...まあ、TSocketには3番目の(オプションの)パラメーター$persistがあります。デフォルトはfalseです。しかし、phpcassaの59行目を変更して$persistをtrueに設定すると、回帰テストはすべて地獄に落ちます。それらが失敗する方法は、私がどこかでいくつかの「最大接続」制限(おそらくcassandra構成)に達しているように見えるので、私は今それを調べています。

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

thrift - Apache Thrift:クライアントが生きているかどうかをサーバー側で確認する方法は?

Java で書かれたリサイクル クライアントと、C++ で書かれたリサイクル サーバーがあります。クライアントが、thrift インターフェイスを介して C++ サーバーで時間のかかる関数を呼び出すとします。このシナリオでは、サーバーがこの時間のかかる関数の実行を完了する前に、クライアントが停止したと想定します。すでに死んでいるクライアントに応答を送信しようとする前に、サーバーが何らかの予防策を講じることができるように、クライアントが生きているかどうかをサーバーコードでチェックするためのハンドルまたは関数がthrift APIにありますか。ありがとう。

簡単に言えば、私の質問は、呼び出し元のクライアントが生きているかどうかをサーバーで判断できるかということです。この目的のためにthrift APIにハンドルはありますか?

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

load-balancing - ロード バランシング 節約トラフィック

倹約に基づくクライアント/サーバー アーキテクトの設計があります。倹約ベースのサービスを負荷分散する方法について経験のある人はいますか? 私はいくつかのアルゴリズムを適用することさえできるいくつかの負荷分散アプローチを探しています。ラウンドロビン、加重など

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

cassandra - カサンドラのキーに対する複数のスーパーカラムのすべてのサブカラム

1 つのリクエストで、キーに対して複数のスーパーカラムで使用可能なすべてのサブカラムのリストを読み取ることができますか。

例えば

スーパーカラムx1、x2、x3を持つキー「y1」があります

x1 には c1、c2、c3 のような名前のサブカラムがあります
x2 にはサブカラム c9 と c8があり
ます x3 には c1、c3、c10 があります

1 つのキー「y1」に対する 1 つのリクエストですべてのサブカラムを読み取りたいとします。