1

我一直在使用 Flask 构建一个应用程序,作为在同一台机器上运行的另一个服务的代理和身份验证层。我的问题是,在对第二个服务进行 REST 调用时,响应时间在 15 毫秒到 20 毫秒之间变化。但是,当代理首先查询时,响应时间需要 > 1000 毫秒,这在这种情况下是多余的。

代理仅使用 HTTPBasicAuth 对 SQLAlchemy 中的用户表进行身份验证,并将立即将调用转发到公开第二个服务的适当 url。下面是一个例子:

@device_blueprint.route('/devices/data', methods=['GET'])
@auth.login_required
def getAll():
    current_app.logger.info('Received request from ip [%s] with headers [%s]', request.remote_addr, request.
    r = requests.get("URL TO SECOND SERVICE")
    if not r:
        abort(400)

    return "%s" % r.json()

该应用程序在具有 4 个工作线程的 gunicorn 上运行。任何想法如何减少响应时间?

4

0 回答 0