我已按照以下步骤设置了龙卷风服务:
http_server = httpserver.HTTPServer(request_handler)
http_server.bind(RECV_PORT, RECV_IP)
http_server.start(PROCESS_NUM)
ioloop.IOLoop.instance().start()op.IOLoop.instance().start()
然后我将请求发送到此服务。当请求持续时间不长时,例如在某些情况下可以10分钟。但是,随着处理时间超过二十分钟,请求代码将引发读取超时异常。奇怪的是,异常发生在一小时内(这是超时设置),但是服务日志显示处理在20分钟内完成。
我尝试了python请求和urllib2库,但是结果是相同的。请求代码如下:
response = requests.post(url, data=data, timeout=3600, stream=False)
或
req = urllib2.Request(url=url, data=urlencode_data)
res_data = urllib2.urlopen(req, timeout=3600)
服务和请求代码在docker中运行,并且彼此之间可以访问。短时间请求中不存在问题。