本文主要对Python三大Web框架Django、Flask、Tornado的部署进行说明,web服务器环境为Nginx1.5,并于Python的uwsgi结合,从而实现高并发
UWsgi配置
<uwsgi> <socket>127.0.0.1:8999</socket><!-- 内部端口,自定义 --> <chdir>/data/wwwroot/blog/</chdir><!-- 项目路径 --> <module>project.wsgi</module> <processes>4</processes> <!-- 进程数 --> <daemonize>uwsgi.log</daemonize><!-- 日志文件 --></uwsgi>
运行
Nginx配置
server { listen 80; server_name lab.gaozhe.top; rewrite ^(.*) https://$server_name$1 permanent; #charset koi8-r; #access_log logs/host.access.log main; location / { proxy_pass http://localhost:5000; } }
运行
# 生产运行 set FLASK_APP=app python -m flask run # 调试运行 set FLASK_APP=app set FLASK_ENV=development # 生产环境不可设置 flask run
配置
def main(): # 创建应用 app = make_app() # 创建server server = tornado.httpserver.HTTPServer(app) # 绑定端口 server.bind(8888) # 每一个进程fork一个子进程 server.start(0) # forks one process per cpu # 开始IOLoop循环 IOLoop.current().start()
运行
Nginx 配置和 Flask一致 python app.py