Django为所有网站访问者缓存整个呈现的HTML页面

时间:2018-07-07 12:47:38

标签: python django caching memcached

我有一个特殊的视图,需要花费一分钟的时间为所有用户加载。视图的内容不是特定于用户查看它生成的呈现的HTML(这是一个很大的计划),但是每次有人访问计划页面时,都不可能(而且效率很低)运行这种昂贵的操作。

所以我想做的是将整个页面的渲染内容缓存在数据库中,甚至缓存在S3中的文件中。我所见过的所有Django和缓存文档都谈到了将每个唯一的访问者缓存到要缓存的应用程序部分,而不是整个站点。我想始终向所有人展示相同的缓存视图。在这种情况下,我甚至不确定缓存是否正确。

它不是静态页面的原因是因为内容每天都会更改几次(大约),但是将post_save信号连接到计划表没有问题,这样它将刷新缓存的和完整呈现的HTML内容

这是我第一次研究缓存,因此我的理解可能存在一些根本缺陷。不胜感激!

1 个答案:

答案 0 :(得分:0)

相反,几乎所有Django的文档都讨论了为所有用户缓存,尤其是per-view cache,它恰好可以满足您的需求。缓存每个唯一用户要困难得多。