Python 基于flask的多请求并行处理

Python 基于flask的多请求并行处理,python,flask,multiprocessing,requesthandler,Python,Flask,Multiprocessing,Requesthandler,在上述程序中,执行后将执行第一个请求和第二个请求。但我想让这样一个服务器在某个时间通过使用flask或其他任何东西并行地接受、执行和响应多个请求 如何实现这一点?对于多请求处理/生产部署,必须使用gunicorn、apache或gevent 类似的方法也适用于其他python web框架,如Django。您可以使用klein模块,它一次处理多个请求。 请参考以下lin,其将给出明确的解释 关于烧瓶中的限制。 参考这个链接后,我从Flask切换到Klein。希望它也能帮助您。我也需要这台用

在上述程序中,执行后将执行第一个请求和第二个请求。但我想让这样一个服务器在某个时间通过使用flask或其他任何东西并行地接受、执行和响应多个请求


如何实现这一点?

对于多请求处理/生产部署,必须使用gunicorn、apache或gevent


类似的方法也适用于其他python web框架,如Django。

您可以使用
klein
模块,它一次处理多个请求。

  • 请参考以下lin,其将给出明确的解释 关于烧瓶中的限制。


参考这个链接后,我从Flask切换到Klein。希望它也能帮助您。

我也需要这台用于分布式群集计算,假设服务器m/c的请求负载太高,那么我想将请求转移到另一台连接到服务器的计算机上。通常我使用dask.distributed来管理分布式集群计算。我可以用klein转移请求吗?主要是我想转移请求,因为服务器的负载太高。请参考他们的文档:很抱歉打扰您,您能给我发送任何可以同时处理多个请求的示例吗?通过使用此示例==>from klein import klein import time app=klein()def testFun():print('Starting'),True:time.sleep(3)print('looping')time.sleep(3)print('3秒后))@app.route('/',methods=['GET'])def square#u submit request(request):#x=int(request.args.GET('x',[0])[0])res res x*testFun()返回如果name==“main”,则为“completed”:app.run(“localhost”,8888)处理多个请求与处理多个请求不同。Klein一次将处理大量请求。但逐个处理。但在Flask中,即使在执行请求时发送三个以上的请求,也会崩溃。您还可以激活Klein中的线程进行多个处理。从Klein从twisted.inter导入Kleinnet import defer from twisted.internet import threads import time app=Klein()def testFun(请求):打印(请求),True:time.sleep(3)打印(“循环”)time.sleep(3)打印('3秒后”)@app.route('/',methods=['GET'])def square_提交(请求):#testFun(请求)threads.deferToThread(testFun,request)返回“hello”#res=x*x testFun()如果name=='main',返回“completed”:app.run(“localhost”,8888)你能给我举个例子帮助我用django检查并行处理请求吗??thanks@SudipDasDjango可以使用Apache mod_wsgi进行部署,如中所述,我也使用过gunicorn,但是gunicorn不提供静态文件,您需要进一步将其与nginx接口以提供静态文件我们可以使用docker swarm和scale服务,也可以使用Elastic Beanstalk和动态缩放。。
@app.route("/")
def start():
    #will do some task
    return 'completed'