Choosing between Django-Apache and Java-Tomcat for a web application

To develop a web application that can easily scale, ensure production stability, is easy to deploy, and allows you to develop rapidly, what points would you recommend before choosing one or the other structure - using Java and Tomcat, or Django and Apache / Mod_WSGI?

Some pros and cons that I could see right away

  • Tomcat applications are easy to deploy - release the WAR file and you're done. Django apps seem to need more controversy (not sure if working with .egg files and dumping them will work too?)
  • Django ORM looks much better than Hibernate - it generates models directly compared to Hibernate's manual configuration files.
  • Python as a language is developing faster and much more concise than Java. (Of course, this is a discussion of a higher level).

I looked at Disqus slides about Django scaling, and I have no doubt that this can be done. But will scaling a Django application be harder than scaling Java / Tomcat?

I am familiar with Java and Python and with the above frames, and it comes down to getting feedback from those who worked with (or both) on a scale.

Thanks!

+6
java python django tomcat
source share
3 answers

Here are my impressions:

  • Django-Apache is suitable for 16 MB of memory, while Java-Tomcat requires much more.
  • Python coding is much faster, that's right. In Java, on the other hand, you have runtime checks, profilers, and debuggers that help improve the stability of your application.
  • If you plan to do heavy computing or need complex data structures, Java compilation technologies will provide the required speed.
  • It’s easier to support a large project in a strictly object-oriented environment using modern refactoring tools such as Java.
  • Again, coding in Python is much faster.
+5
source share

It is worth noting that Python code can be extended using C / C ++ code . Thus, Django applications can, in fact, be faster than their Java equivalents if you carefully use your own code where speed or complex data structures are required.

Obviously my vote is for Django.

+3
source share

I choose Python with Django because it is better at deployment. You do not need to build a war. You copy only files on the server and that’s it.
Django is easy to scale and stable. see this .

If you prefer Java, look at Grails. But he has 2 minutes: building a war and a lot of memory usage (200 mb without users).

+2
source share

All Articles