The web has traditionally consisted of, relatively speaking, simple websites. The past few years have seen that change, though. The modern web consists as much of complex SaaS applications as it does of personal blogs, news sites, and so on. As the web evolves, so does the list of technologies used to power these applications. No longer is it enough to just be a fast static file server with a FastCGI interface. These days we need to consider technologies such as web sockets, as well the expanded complexity of web application architectures and the demands they put on the front line of our web stack.
Thankfully, Nginx was originally built, not only as a fast static file server but also as a reverse proxy. This means that Nginx was always intended to sit in front of other backend servers, and farm out requests to different servers on the internal network...