在部署 Django 的时候有一个 runserver 命令可以直接作为服务器使用,那为什么还看到有很多文章介绍 Django 在 Nginx/Apache 上部署呢?是从性能/稳定性方面考虑的吗?
1
asuraa 2017-10-05 18:20:08 +08:00 2
最近正好在学 django,尝试回答下吧,我觉得有以下原因
runserver 是作为开发时候用的,不适合用于生产环节 1 静态文件: runserver 服务器当 debug=True 的时候 才会开启静态文件服务器。 2 性能: runserver 应该是单线程的。性能差,如果出现错误挂掉。那么整个进程都挂掉了。用 Nginx apache 的话 应该是只有香港的进程才会挂掉 |
2
siriussilen 2017-10-05 19:47:23 +08:00
性能!当然是性能!
|
3
janxin 2017-10-05 20:54:27 +08:00 1
|
4
Kilerd 2017-10-05 21:21:45 +08:00
block
原因:文档中有的内容 + 百度随便能搜到 |
5
BingoXuan 2017-10-06 00:19:56 +08:00 via Android
Django 是 Web 框架而已,Apache 和 Nginx 才是 Web 服务器。当你搭建了 Web 服务器之后,才有部署 Web 框架应用的可能。
而且你试一下在 80 端口打开 Django 看看,一般会被占用。因为 Django 本来就不是 Web 服务器,管理不了端口。 |