Zero Downtime Code Update for Django App
You can use Blue-Green deployment approach.
In this approach, there are two identical server: one is Blue, other is Green.
At any time, only one of the environments is live, with the live environment serving all production traffic.As you prepare a new release of your software you do your final stage of testing in the green environment. Once the software is working in the green environment, you switch the router so that all incoming requests go to the green environment - the blue one is now idle.
Things being used:

Supervisor to run uwsgi
uwsgi to bring up my Django non-rel 1.6 based ML app (Django Upgrade in process)

I am using Uwsgi to start my Django ML based app. 
But somehow as it has to load a lot of binaries for initialization, it takes about 20-30 seconds for supervisor to restart and load new code. 
How can I reduce this time?
or is there any other way to run the Django app so as to reload quickly when code changes?   With ZERO downtime? as Nginx will start throwing 5xx if it can't connect to Django.