Ошибка лимита max_clients на сервере торнадо-ботокор
Я разработал сервер Tornado, использующий пакет tornado-botocore для взаимодействия со службой Amazon SQS. Когда я пытаюсь загрузить тестовый сервер, я получаю следующий журнал: [simple_httpclient:137:fetch_impl] достигнут предел max_clients, запрос поставлен в очередь. 10 активных, 89 запросов в очереди. Я предполагаю, что это из ASyncHTTPClient, используемого пакетом botocore. Я попытался установить max_clients на большее число, но безуспешно:
def _connect(self, operation):
sqs_connection = Botocore(
service='sqs', operation=operation,
region_name=options.aws_sqs_region_name,
session=session)
sqs_connection.http_client.configure(None, defaults=dict(max_clients=5000))
Что я делаю неправильно?
Благодарю.
1 ответ
configure
это метод класса, который должен быть вызван до AsyncHTTPClient
создано: tornado.httpclient.AsyncHTTPClient.configure(None, max_clients=100)
,
Сообщение журнала не указывает на ошибку (оно зарегистрировано в debug
уровень). Вам решать, будет ли уместно, чтобы эта служба реагировала на нагрузку, используя больше соединений или ставя в очередь. 5000 соединений для одного процесса подачи заявок кажутся мне слишком большими.