from tornado.simple_httpclient import SimpleAsyncHTTPClient from tornado.log import gen_log class NoQueueTimeoutHTTPClient(SimpleAsyncHTTPClient): def fetch_impl(self, request, callback): key = object() self.queue.append((key, request, callback)) self.waiting[key] = (request, callback, None) self._process_queue() if self.queue: gen_log.debug("max_clients limit reached, request queued.")