- こんにちは私は
Klein
私のWebサーバー用のPythonモジュールを使用しています。 - スレッドごとに別々にリクエストを実行する必要があり、結果を返すためには が必要です。
- しかし、Kleinは別の要求を 処理する単一の要求が完了するまで待機します。
- また、ねじれたモジュールから
deferToThread
を使用して試しました。また、 は、最初の要求の完了後にのみ要求を処理します。 - 同様に私は同じ結果を も生成する
@inlineCallbacks
メソッドを試しました。
注:このメソッドは何も返さないときに完全に機能します。 しかし、結果を返す必要があります。ここ複数のリクエストを同時に処理し、結果をKlein Module Pythonで返す
Iは、以下のサンプルコードスニペットを添付
import time
import klein
import requests
from twisted.internet import threads
def test():
print "started"
x = requests.get("http://google.com")
time.sleep(10)
return x.text
app = klein.Klein()
@app.route('/square/submit',methods = ['GET'])
def square_submit(request):
return threads.deferToThread(test)
app.run('localhost', 8000)
Twistedは、複数の要求を並行して実行できる必要があります。最初に使うのはややこしいことです。たぶん、あなたのツイストコードを提供し、それを見てみましょう。さもなければ、私は 'マルチプロセッシング'や 'マルチスレッド'モジュールを調べます。私はおそらく、戻り値の通信を処理するためにキューを使用します。そのための 'queue'モジュールを見てください。 –
@ TammoHeerenご回答ありがとうございます。キューモジュールを使用するための参照リンクについて言及してください。 –