2017-11-23 12 views
0

おはようございます。私はイカで理解するようにあなたの助言を求めて、そして、pythonで友達を作ることが出てこない。私はイカに非同期ヘルパーを書いています。 Squidは次のように調整しました:squid external_acl_type同時の応答

external_acl_type aclproxy3 ttl = 300 children-max = 1 concurrency = 100% LOGIN python -u /opt/agent/helper.py proxy3. 

Squidはナンバリングによってヘルパーに要求を送信します。ヘルパーは、上記のフォーマット仕様に従って展開ラインを受信し、各入力ラインの1つのラインの開始を返し

:[「0」、「データ」]、[「1」、「データ」] はドックと言いますOK/ERR/BHの結果コードを入力し、オプションで詳細なキーワードを追加します。

しかし、私は答えを形成する方法を理解していません。実際、要求は1,2,3の順番で来て、2,1,3を満たします。したがって、回答も同様に識別する必要があります。しかしどうですか? この段階で、私はgeventスタックに書き込まれた方法で問題を解決しました。実際には、すべての要求が最初に追加された後、すべてがオーダで処理され、結果はOK/ERRであり、2番目と3番目の要求が処理された場合は待機しますすべてに順番に答える最初の命令の終わり。 これはサイコロです。ですから、アドバイスをお願いします。プロトコルは 要求/応答の前にクエリチャネルタグを導入することによって変更される同時実行=オプションを使用する場合、任意のヒント

答えて

0

回答のおかげで、ドキュメント

で発見されました。 クエリチャネルタグは、0〜同時実行性1の数値です。 この値は、その要求に関連する最初の部分 としてSquidにそのまま反映されなければなりません。 0 ERR

、 ... [1、データ]、[0、データ]と1 OKを返す必要があります。です BLOCKQUOTE

は、我々は例えば、標準入力に乗ります