そこで、http://tavendo.com/blog/post/going-asynchronous-from-flask-to-twisted-klein/のガイドに従って、非同期 Web サービスを作成しました。
私のコードでは、次のようなリクエストを送信する関数がありました
def query(text):
resp = yield treq.get("http://api.Iwanttoquery")
content = yield treq.content(resp)
returnValue(content)
@inlineCallbacks
def caller():
output1 = yield query("one")
output2 = yield query("two")
API への各クエリには通常約 3 秒かかるため、現在のコードでは 6 秒後に結果が返されます。2 つのクエリを同時に送信して、3 秒後に output1 と output2 の両方のコンテンツを取得できる方法はあるのでしょうか。ありがとう。