Have you wondered the steps a users request goes through before being responded to by Django? The answer lies in reading django.core.handlers.base and django.core.handlers.wsgi. Here is a diagram explaining what happens. (Click to enlarge.)
The steps are. (With Apache/Mod_wsgi, similar steps for other setup.)
- User’s request comes to Apache etc.
- Apache sends request to
django.core.handlers.wsgiviamod_wsgi. - A list of request and response middleware callables is created.
- Request middleware is applied. If it sends a response, it is returned to the user.
urlresolvers.resolvefinds the view funcion to use.- View middleware is applied. If response comes, it is sent back to the user.
- View function is called. It talks to models to do business logic, and renders the templates.
- The response middleware is applied, and response is sent back to the users.
This misses a lot of important steps (Exception middleware, request_context populating, …) but is a basic high level overview.
Resources
Do you twitter? Do you Github? Find us there.
Related posts:


{ 1 trackback }
{ 1 comment… read it below or add one }
A Google App Engine application is also quite similar
This comment was originally posted on FriendFeed