首页 > 解决方案 > 增加 Tornado/Flask 设置的超时时间

问题描述

我有一个 Tornado/Flask 设置,如下所示,由于请求时间过长,我收到 502 网关超时。

如何增加 Tornado 的超时时间?我查看了 Tornado 的文档,但找不到相关信息。

import os
from flask import Flask
from flask_cors import CORS
from flask_env import MetaFlaskEnv
from flask_restful import Api
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
from tornado.wsgi import WSGIContainer
from resources.version import Version


class Configuration(metaclass=MetaFlaskEnv):
    """
    Service configuration
    """

    DEBUG = True
    PORT = 5000

# setup api app
app = Flask(__name__)
app.config.from_object(Configuration)
API = Api(app)

# allow cross site request
CORS = CORS(app, resources={r"/api/*": {"origins": "*"}})

# system endpoints
API.add_resource(Version, '/api/v1/version')


if __name__ == '__main__': # pragma: no covers
    # start server
    HTTP_SERVER = HTTPServer(WSGIContainer(app))
    HTTP_SERVER.listen(port=app.config["PORT"])

    num_process = int(os.environ.get('NUM_PROCESS', 4))
    HTTP_SERVER.start(num_process)

    IOLoop.instance().start()

标签: pythonflaskwebservertornado

解决方案


Tornado 没有任何会导致返回 502 的超时。这必须来自系统的其他部分(可能是 nginx 或 haproxy?)


推荐阅读