Reputation: 7
I've developed a Tornado server using the tornado-botocore package for interacting with Amazon SQS service. When I'm trying to load test the server i get the following log: [simple_httpclient:137:fetch_impl] max_clients limit reached, request queued. 10 active, 89 queued requests. I assume it's from the ASyncHTTPClient used by the botocore package. I've tried to set the max_clients to an higher number but with no success:
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))
what am i doing wrong?
Thanks.
Upvotes: 1
Views: 1264
Reputation: 22134
configure
is a class method that must be called before an AsyncHTTPClient
is created: tornado.httpclient.AsyncHTTPClient.configure(None, max_clients=100)
.
The log message does not indicate an error (it's logged at debug
level). It's up to you whether it's appropriate for this service to respond to load by using more connections or queuing things up. 5000 connections for a single application process seems like too much to me.
Upvotes: 3