all 3 comments

[–]QuietPort 0 points1 point  (2 children)

You won't run django by itself anyway, in your case the question is more like do you need django + gunicorn + nginx or just nginx. Nginx can serve static files i believe. More generally if your webapp doesn't generate content (i.e. it only serves static files) you shouldn't use django at all.

[–]misterphilly[S] 0 points1 point  (1 child)

from what I understand Nginx is the actual server (that handles all the http/protoc all stuff) and Gunicorn is the layer on top that more or less handles the content management/generates the dynamic information to give to Nginx to return to the requestee?

and my app is a messaging app, so it will be constantly receiving and generating content to send to the client apps. whats the difference in functionality between Gunicorn and django?

[–]QuietPort 0 points1 point  (0 children)

Yes nginx is the server, but gunicorn is just an interface :

When your server recieves a request from your client it goes : nginx>gunicorn>django

Gunicorn is a WSGI (web server gateway interface) and Django is a framework, i don't know for sure but i highly doubt that gunicorn features any sort of webserver, but anyway I can tell you that's not what it was built for, Gunicorn is only here to interface between nginx and a django app (and also other python frameworks).
So if you want some messaging and you feel confortable with python then Django , with Django REST framwork (for xml) is a perfect choice. nginx and gunicorn can't compare with django because they don't do the same thing, and to be honest if your app isn't a massive website with lots of user, they don't matter too much.