gpt4 book ai didi

django - 如何安排 redis 缓存的失效?

转载 作者:IT王子 更新时间:2023-10-29 06:06:48 29 4
gpt4 key购买 nike

我正在使用 django 作为一个框架来为一个博客站点构建一个内容管理系统。

每篇博文都有一个路由,其中​​包含博文的唯一标识符。这些博客文章可以安排时间并有到期日。这意味着路由必须是动态的。

整个站点需要缓存,我们设置了redis作为后端缓存。我们目前针对静态路由缓存呈现的页面,但需要找到一种针对动态路由缓存页面的方法(并在博客文章过期时使它们失效。)

我可以使用 cron 作业,但它不合适,因为... a) 新的博文很少上线,也不是定期上线 b) 用户可以将帖子安排到分钟。这意味着 cron 作业必须每分钟运行一次,这看起来有点矫枉过正!

我刚刚找到了 django-cacheops库,它似乎完全符合我的需要(安排我们的缓存失效并通过信号使它们失效)。这与我们现有的设置兼容吗?设置是否容易?

我认为这是一个很常见的问题 - 有没有人有比上述更好的想法?

最佳答案

我无法对 django-cacheops 发表评论,因为我从未使用过它,但 Redis 提供了一种非常简单的方法来使用 EXPIRE 执行此操作命令:

Set a timeout on key. After the timeout has expired, the key will automatically be deleted.

用法:

SET some_key "some_value"
EXPIRE some_key 10

键 some_key 现在将在 10 秒内被 Redis 自动清除/删除。如果您需要从一开始就知道何时应该删除博客文章的缓存,那么这应该可以完美满足您的需求。

关于django - 如何安排 redis 缓存的失效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24725140/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com