Integration between Django and the Varnish HTTP accelerator using the management port using telnet
Project description
Varnish is a state-of-the-art, high-performance HTTP accelerator. For more information checkout Varnish Site
Django Varnish works with Varnish server(s) to manage caching of object pages. It allows you to monitor certain models and when they are updated, Django Varnish will purge the model’s absolute_url on your frontend(s). This ensures that object detail pages are served blazingly fast and are always up to date. You may also go in and manually tweak things (such as your VCL configuration) using a management command.
Django Varnish requires the varnish python bindings
Put varnishapp in your INSTALLED_APPS then set a few more settings.
VARNISH_WATCHED_MODELS is a list of installed models whose absolute_urls you want to purge from your Varnish cache upon saving. Example: ('auth.user','profiles.profile')
VARNISH_MANAGMENT_ADDRS is a list of Varnish cache addresses (containing their management ports). Example ('server1:6082','server2:6082')
The management command varnishmgt is also now available and just blindly executes passes commands and prints the results. Example $ ./manage.py varnishmgt purge_url "/"