begin_time = datetime.now()
req_id = uuid.uuid4().hex
try:
resp = requests.post(url, json={'req_id': req_id}, timeout=5).json()
except Exception:
pass
print(f"req_id: {req_id}, request_time: {begin_time}, resp_time: {datetime.now()}")
class BaseHandler(tornado.web.RequestHandler):
def __init__(self, *argc, **argkw):
self.init_time = datetime.datetime.now()
super(BaseHandler, self).__init__(*argc, **argkw)
class HeartbeatDetect(BaseHandler):
SUPPORTED_METHODS = ("POST", "GET")
async def post(self):
req_id = self.qdict['req_id']
logging.info(f'************init_time:{self.init_time}, view_time:
{datetime.datetime.now()} request comming: {self.qdict} req_id: {req_id}')
..... do something
记录的时间如下
init_time : 2021-11-15 10:01:20.353389
view_time : 2021-11-15 10:01:22.288460
request_time: 2021-11-15 10:01:11
resp_time : 2021-11-15 10:01:16
可以看到 request_time
和 init_time
之间隔了 9s 才初始化request 对象. 这样的问题该怎么解决?
我一直使用tornado,从未遇到这样的问题。刚才特地又测了一下题主的代码,最大延迟时间只有几个毫秒。给题主两个建议:1. 同一时间只有一个请求吗?是不是有其他请求存在?2. 过程中间有数据库连接吗?