在Flask中if __name__的真正作用
flask自带一个服务器,主要用在开发环境。默认情况下一次只能处理一个请求。
开发环境下,处理连接时flask用的werkzeug,werkzeug用的socketserver,socketserver默认同时最多处理5个请求,但werkzeug已经把值改为128了,之所以每次只处理6个请求,是因为chrome浏览器限制每次最多6个请求,同时发许多请求只能发出6个,后面的都会等待,等待发生在浏览器端而不是服务端。
生产环境部署项目时通常使用nginx+uwsgi,nginx作为前置服务器用来接收浏览器发来的请求,接着转发给uwsgi,由uwsgi加载类似hello_flask.py模块文件启动flask相关代码
这时候和开发环境不同的的是hello_flask.py已经不再作为入口文件,而是作为模块文件。
这时候如果没有if __name__ = '__main__'判断,生产环境下就会加载flask内置的web服务器和uwsgi两个服务器