Я использую библиотеку запросов в python 3, и, несмотря на все мои усилия, я не могу избавиться от следующего предупреждения:
ПРЕДУПРЕЖДЕНИЕ:requests.packages.urllib3.connectionpool: Пул подключений заполнен, отбрасывается подключение: myorganization.zendesk.com
Я использую запросы в многопоточной среде для одновременного получения и отправки json-файлов на один хост, без субдоменов. В этой текущей настройке я использую всего 20 потоков.
Я попытался использовать Session
, чтобы получить запросы на повторное использование соединений и, таким образом, избавиться от проблемы, но это не сработало. Это код в моем конструкторе класса:
self.session = requests.Session()
adapter = requests.adapters.HTTPAdapter(
pool_connections=100, pool_maxsize=100)
self.session.mount('http://', adapter)
self.session.headers.update({'Connection':'Keep-Alive'})
self.session.auth = (self._user+"/token", self._token)
Согласно совету из здесь мне не нужно увеличивать количество соединений в пуле учитывая количество потоков, которые я использую, но, несмотря на это, я получаю это предупреждение даже при повышении на 100.
Это заставляет меня думать, что соединения вообще не используются повторно, а если и используются, то по какой-то причине создается слишком много. Я обновил запросы, так что это самая последняя версия.
У кого-нибудь есть идеи, как я могу избавиться от этого? Я отлаживаю некоторый код, и я думаю, что это вина за то, что некоторые запросы выполняются неправильно.
Связанный:
Могу ли я изменить размер пула соединений для запросов Python? модуль?