Anyone using Django in the "Enterprise"

Viewed 17814

I know that the word “enterprise” gives some people the creeps, but I am curious to know if anyone has experience creating enterprise applications, similar to something like say… Java EE applications, which are highly concurrent, distributed applications with Django? I know Java has its own issues but its kind of viewed as THE enterprise framework and I think that’s unfortunate.

Some people say that Rails is a good replacement for Java EE but what about Django? Has anyone ever used it in this context? You only ever see pretty standard websites on djangosites.org and it seems like its capable of so much more. I am planning on scrapping some of our old systems which are written mostly on ASP.NET and some Java for something more easily maintainable. I started using Django for some other applications and find it to be fantastic for what I am using it for (Corporate news, intranet, etc.) internally but what about something like… an accounts receivable system, or a billing system, etc. I would hate to see a framework such as this pigeon-holed into a category it doesn't need to be. It seems to be used for social media/networking, content-heavy sites, not so much data processing, etc. I feel that it has all the elements needed to start down this path. Anyone have any thoughts?

7 Answers

My Company uses Django for at least six large scale enterprises such as mercedes, adidas. we often use the Jython wrapper. The advantages are

  • reduced development cost compared to Java/C#
  • runs stable via wrappers in IIS or Tomcat/Java environments
  • protects our software from copycats

Therefore we are well satisfied with Django and are promoting it to all our customers due to the dev cost advantage.

EDIT That was several years ago. Since then the portal got closed and maybe reopened. I have no idea what is it's state. But it was using at some point Django (source: I applied there at one point).

http://grono.net/ is a polish equivalent of Facebook and is used by a quite a few people (at some point it was a few million, now it's less, due to FB popularity). It works on distributed Django.

For the systems you want to replace, you may find that it is desirable to use something more powerful than Django's ORM like SQLAlchemy. It's not a question of scaling, but the fact is that Django's ORM makes it hard to build complex queries and often pushes you to do in Python what should be done by your RDBMS — when you don't have to resort to raw SQL. Although SQLAlchemy has a steeper learning curve, it has more features and is better suited to complex database operations. It's certainly worth your time to have a look at it before deciding on a web stack to build on.

This is probably less relevant to your questions but all the functionality in Django is also provided by other libraries that I find to be superior : Jinja2 for templating (it has the same syntax as Django templates without the mess that is the template tags system and better performance), WTForms for forms and modelforms, Babel for i18n (with many features not present in Django's own i18n library) and Werkzeug to provide a complete WSGI interface with URL routing.

Related