部署 django ,flask的线上环境时,通常要搭配 nginx 和 uwsgi
生产环境怎么部署 Django 是性能和安全方面的需求决定的。
标准 Python 只能是是单线程,无法并发,而 uwsgi / gunicorn 通过多进程池达成了更暴力的并发。
Django 的内置 server 是简易的调试用服务器,那是不能用于生产的,性能用 ab 之类的工具压测一下就知道了。
在需要性能的场合,通常单单 nginx 和 uwsgi 也是不够的。nginx 主要优化的是连接数和静态文件。uwsgi 主要优化的是 wsgi 服务。这些都只是手段。其它手段包括,优化数据库,增加缓存,加入负载均衡器,引入异步 IO 框架,计算密集型模块用 C 重写等。