Django中的缓存:Redis + Django与Varnish

0 投票
1 回答
803 浏览
提问于 2025-04-18 09:51

我看了一些文档,有几个问题想问。

我知道我们可以把 Redis 用作 Django 的缓存后端。这样我们就可以使用 Django 缓存框架中的装饰器来缓存某些视图。我对这一点理解得差不多了,但我了解到还有一个叫 Varnish 的 HTTP 加速器。

如果把 Varnish 和 Redis + Django 缓存一起使用,它是怎么工作的呢?Varnish 和 Django + Redis 缓存在内置缓存框架中有什么区别?这两者能同时使用吗?因为有一个网页加速器听起来真的不错。

1 个回答

2

Varnish 是一个缓存的 HTTP 反向代理,它总是在你的服务器前面。而 Redis 是一个键值存储,所以它们的作用和位置是不一样的。对我来说,我用 Redis 来存储构建好的对象、数据库查询的结果,而用 Varnish 来处理静态页面(不要用 Varnish 来缓存动态内容,这样会引发很多麻烦)。

撰写回答