I've been developing a simple MVP application, and it's time to deploy it to my production server for more thorough outside testing. It will never get a heavy traffic load, it's just something I need a small group of users to test.
Now I've always gone with three layers. Nginx/Apache > Guncicorn/CherryPy/etc > Flask/Django/Pyramid/Bottle/etc
I KNOW this is the convential wisdom. But I've never actually taken the time to ask why. What am I setting all of these up for?