选择 Django-Apache 还是 Java-Tomcat 作为 Web 应用程序的基础

7 投票
3 回答
17207 浏览
提问于 2025-04-16 13:47

为了开发一个可以轻松扩展、稳定可靠、容易部署,并且能快速开发的网页应用,在选择使用Java和Tomcat,还是Django和Apache/Mod_WSGI这两个框架之前,有哪些方面是我需要考虑的呢?

我能想到的一些优缺点:

  • Tomcat应用程序的部署非常简单,只需要放一个WAR文件就可以了。而Django应用似乎需要更多的操作(我不太确定创建.egg文件并放进去是否也能顺利工作?)
  • Django的ORM(对象关系映射)看起来比Hibernate要好用得多,它可以直接生成模型,而Hibernate则需要手动配置文件。
  • Python这门语言的开发速度比Java快,而且代码更简洁。(当然,这只是一个相对高层次的讨论)。

我看过Disqus关于扩展Django的幻灯片,毫无疑问这是可行的。但扩展一个Django应用会比扩展一个Java/Tomcat应用更难吗?

我对Java和Python以及上述框架都比较熟悉,最终还是想听听那些在大规模应用中使用过这两种框架的人反馈。

谢谢!

3 个回答

2

我选择了Python和Django,因为它在部署方面更好。你不需要构建war文件,只需把文件复制到服务器上就可以了,简单方便。
Django很容易扩展,而且在生产环境中也很稳定。可以看看这个链接

如果你更喜欢Java,可以看看Grails。不过它有两个缺点:需要构建war文件,而且占用的内存比较多(没有用户时就要200MB)。

5

值得注意的是,Python代码可以用C/C++代码来扩展。所以,如果在需要速度或者复杂数据结构的地方小心使用原生代码,Django应用实际上可以比Java的应用更快。

显然,我更支持Django。

9

以下是我的一些经验:

  • Django和Apache组合只需要16MB的内存,而Java和Tomcat组合则需要更多的内存。
  • 用Python编程的速度确实更快。不过,Java有编译时检查、性能分析工具和调试工具,这些可以帮助你提高应用程序的稳定性。
  • 如果你打算进行大量计算或者需要复杂的数据结构,Java的编译技术能提供你所需的速度。
  • 在一个严格的面向对象的环境中,比如Java,使用高级重构工具来维护大型项目会更容易。
  • 不过,编写Python代码的速度确实更快。

撰写回答