一尘不染

本地Flask服务器上的请求缓慢

flask

刚开始在本地服务器上试用Flask时,我注意到请求/响应时间比我预期的要慢得多。

像下面这样的简单服务器需要近5秒钟才能响应。

from flask import Flask

app = Flask(__name__)

@app.route("/")
def index():
    return "index"

if __name__ == "__main__":
    app.run()

有任何想法吗?还是这只是本地服务器的方式?


阅读 1361

收藏
2020-04-05

共2个答案

一尘不染

在支持ipv6并进行了配置的操作系统(例如现代Linux系统,OS X 10.4或更高版本以及Windows Vista)上,如果访问本地服务器,某些浏览器可能会非常缓慢。原因是有时ipv4和ipv6套接字都配置了“本地主机”,并且某些浏览器会尝试先访问ipv6,然后再访问ivp4。

因此,解决方法是通过从主机文件中注释掉以下行来从本地主机禁用ipv6:

::1             localhost 

一旦执行此操作,延迟问题就会消失。

我真的在研究Flask,并且很高兴它不是框架的问题。我知道不可能。

2020-04-05
一尘不染

如此处建议的那样,将“ threaded = True”作为参数添加到app.run():http ://arusahni.net/blog/2013/10/flask-multithreading.html

例如: app.run(host="0.0.0.0", port=8080, threaded=True)

禁用ipv6的解决方案对我不起作用,但确实如此。

2020-04-05