什么时候以及为何使用Django开发服务器?
我明白这很简单,而且根本不需要安装,但还有其他理由让人选择它进行长期开发,而不是用Apache加mod_wsgi吗?作为一个Django新手,我觉得从开发环境到上线(Apache)环境的部署过程相当繁琐和烦人,所以我心里想:是不是在本地也用mod_wsgi会更简单呢?我在Django手册中找到的唯一提到这一点的内容是:
我们把这个包含在Django里,是为了让你能快速开发,而不必在准备好上线之前就去配置生产服务器,比如Apache。
2 个回答
2
当我创建一个简单的Django应用,让本地用户往数据库里填数据时,我通常会让它在开发服务器上运行。我从来没有遇到过什么问题……如果是在本地服务器上,而且没有暴露到互联网,那用它应该没问题。
8
在开发的时候,有时候你需要在本地设置一个和生产环境一样的环境。我在处理一些和子域名相关的代码时就遇到过这种情况,因为我需要在本地模拟我的真实服务器。
不过,对于大多数情况来说,开发服务器是个很大的优势。这里有几点:
- 就像rebus提到的,自动重启功能。
- 控制台上会显示错误追踪信息和有用的调试信息。
- 你可以在代码的某些地方放入
pdb.set_trace()
,这样在某个方法执行时就能得到一个调试提示,方便你查看内容。 - 整个系统都是以单一用户(你)身份运行,你可以完全控制它。
- 只需要一个命令就能启动和运行。
不过,这样做也有代价,就是性能会降低,无法处理真实的流量。这就是为什么在生产环境中需要一个真正的网络服务器来运行它。