Refer to the docs: http://nginx.org/en/docs/http/ngx_http_upstream_module.html
Use cases:
- When using Nginx to resolve virtual hosts to different ports/servers/upstreams.
- When using Nginx as a reverse-proxy to handle caching and other HTTP shenanigans.