Nginx is an open source, high performance http and reverse proxy server.
Nginx can do a lot of stuffs while used as a reverse proxy server.
1. Provide SSL support for varnish
If you are using varnish and wants SSL support, then nginx is the best choice for adding SSL suport. As varnish does not support SSL, you can add nginx infront of varnish and nginx will provide the same.
2. Used as a caching server
Nginx can be used for caching static content, When your website has a lot of static content you can use nginx infront of the web server and it will store the contents in cache and will serve the contents directly from the cache without sending any request to backend server .
3. For serving static content
Nginx can serve static contents like images,JS and CSS files.If you are using nginx as a reverse proxy, it will serve the static contents and you do not have to fetch the files from the main web server.
4. For Load balancer
If you are using more than one web server, you can use nginx as a load balancer. Nginx can route the traffic to appropriate web server.In Load balancing, if the load of the one server increases it will route the traffic to the another server. In this way nginx can be used to handle a lot of traffic.