1

AppEngineを使用してサードパーティとの永続的な接続を確立しようとしています。具体的には、100ミリ秒未満で応答する必要があるリアルタイム入札環境に接続しているため、永続的な接続によってプロセスが大幅に高速化されます。

これを行うために、私はurllib3を使用しようとしています(より良い方法がある場合は教えてください)リクエストハンドラーのpostメソッドが呼び出されたら、接続を開いたまま呼び出し元のURLに書き戻したいと思います。urllib3を使用してリクエストを開く方法は理解していますが、ハンドラーのpostメソッドが呼び出されたときに作成された接続を保持するにはどうすればよいですか。

現時点で私が試しているのは:

http = urllib3.PoolManager()
r = http.request('POST', self.request.url, fields={"foo":"bar"})

しかし、私はこれを行うことでまったく新しいつながりを開くことを恐れています。

ありがとう、サム

4

1 に答える 1

3

AppEngineを使用してサーバーへの永続的な接続を実現する方法はありません。設計上、送信が終了するとAppEngineのすべてのリクエストが閉じます。

URL Fetchサービスは、永続的なHTTP接続をサポートしていません。アプリがURLConnectionオブジェクトを使用して応答データにアクセスすると、AppEngineはURLフェッチサービスを呼び出してリクエストを完了します。応答データにアクセスした後は、要求データを変更できません。

アプリは、リクエストに明示的な接続タイムアウトを設定できません。

于 2012-08-15T07:34:15.533 に答える