Django staticgenerator vs CACHE_BACKEND

2019-06-03 01:57发布

问题:

Is there any difference between staticgenerator and useing Django's CACHE_BACKEND on the filesystem eg. CACHE_BACKEND = 'file:///var/tmp/django_cache' ?

回答1:

Yes.

StaticGenerator generates static HTML files to bypass Django entirely.

Any caching that django does such as the filesystem cache is still processed by django. A lot of the overhead of running your app is still there: django processes a request, goes through middlewares, checks filesystem cache for content, etc.

With StaticGenerator (and their example), nginx is serving the index.html page if it exists and if it doesn't, passes the request on to django on apache.

The idea is to have nginx blissfully serving some html file that StaticGenerator updates on state changes (like saving a model).