如何在Flask中设置最大未决连接数

时间:2018-10-25 20:30:28

标签: python http flask

如何在Flask应用程序中设置未决连接的最大数量?

例如

运行此代码后,可以同时发送两个请求。在处理第一个请求时,另一个将等待。第一个完成后,第二个将被处理。

from flask import Flask
application = Flask(__name__)


@application.route("/")
def hello():
    for x in range(10000000):
        x += 1
    return "Hello World!"


if __name__ == '__main__':
    application.run()

我如何做到这一点,以便当我同时发送两个请求时,第一个请求将被处理,第二个请求而不是等待,将无法连接(也许它将得到某种错误)。

1 个答案:

答案 0 :(得分:0)

您可以将Flask与某些类型的Web服务器一起使用,例如Gunicorn,Nginx或Apache,以接受HTTP请求,然后对其进行操作。人们一起运行Nginx和Gunicorn的原因是,除了作为Web服务器之外,Nginx还可以代理到Gunicorn的连接,这带来了一定的性能优势。

Gunicorn是预分叉软件。对于低延迟通信,例如到应用程序服务器的负载平衡器或服务之间的通信,前叉系统可能会非常成功。 Gunicorn服务器可以; 运行任何WSGI Python Web应用程序(和框架)

可以用作Paster(金字塔),Django的开发服务器,web2py等的直接替代。

具有各种工作人员类型和配置

自动管理工作进程

通过同步和异步工作程序支持HTTP / 1.0和HTTP / 1.1(保持活动)

您可以从此blogpost中获取帮助,以设置带有gunicorn的烧瓶应用程序。