flask中的if __name__ == "__main__"

在编写python文件时,一般会在入口文件中加入if __name__ == "__main__",

这样当这个脚本文件执行时就会执行这个语句下面的内容,而如果这个脚本文件被当作模块引入(import xxx)到其他文件中时这个下面的语句就不会执行。

在flask中还有另一个作用

一般在入口文件中,放在if __name__ == "__main__"语句下面的是app.run(...),

当运行app.run(...)时会执行flask自带的服务器(效率很低),在生产环境中一般使用nginx+uwsgi 作为服务器(nginx作为前置服务器接受浏览器端请求),

项目部署上线后,会由uwsgi加载这个文件,如果没有if __name__ == "__main__"就会同时开启2个服务器,产生矛盾。

原文地址:https://www.cnblogs.com/jay-col/p/10384130.html