We eventually abandoned Varnish because the purging was too far from our application logic. nginx serves static content just as fast as Varnish does, and so getting our application to write static HTML files that were redirected to via nginx was just as quick as Varnish but easier to purge when needed.