0

ハイ!

httplib2 を使用していくつかの接続をシミュレートし、アプリケーションの負荷をテストしています。

しかし、私が遭遇する問題は、アプリケーションへの複数の接続を同時にテストしているときです。次のエラーが表示されます。AttributeError: 'NoneType' object has no attribute 'makefile'.

すべてのスレッドが実行されている場合、各スレッドが実行されるコードは次のとおりです。

url = 'localhost:8086/login'
http = httplib2.Http()
body = {'name': name, 'password': name}
headers = {'Content-type': 'application/x-www-form-urlencoded'}
response, content = http.request(url, 'POST', headers=headers,
    body=urllib.urlencode(body))

headers = {'Cookie': response['set-cookie']}
url = 'localhost:8086/'
response, content = http.request(url, 'GET', headers=headers)

これは、並行して実行されている 5 つのスレッドで機能しますが、10 を超えると、これが観察されますAttributeError

この問題が発生する理由はよくわかりません。通常、ユーザーをシミュレートする各スレッドは、独自の応答、つまり get 要求のコンテンツを使用する必要があるためです。

何が欠けていますか?

ご協力ありがとうございました!

4

1 に答える 1

1

接続が拒否されています。

httplib2 のバグにより、次のような誤ったメッセージが表示されます: http://code.google.com/p/httplib2/issues/detail?id=62

于 2011-06-24T13:53:05.557 に答える