【问题标题】:Django Caching with UsersDjango 用户缓存
【发布时间】:2014-10-13 00:08:36
【问题描述】:

我想知道是否有一种方法可以将查询集缓存到具有经过身份验证的用户和未经过身份验证的用户的站点上的内存缓存。

基本上我只需要缓存一张表中的查询。

任何想法都会很棒。

谢谢

【问题讨论】:

    标签: django memcached django-cache django-caching


    【解决方案1】:

    查看johnny-cache。这对我们很有用,直到我们写了这么多(更新记录),以至于我们不断地使缓存失效。那时我们刚刚开始直接使用 memcache,就像这样。

    cache.set("some_unique_key", my_queryset, 3600)
    cache_object = cache.get(cache_key)
    

    如果您正在处理大型查询集或对象,您可能需要先腌制它们。

    cache.set("some_unique_key", zlib.compress(cPickle.dumps(cache_object), 1), 3600)
    zipped_cache_object = cache.get(cache_key)
    if zipped_cache_object:
        cache_object = cPickle.loads(zlib.decompress(zipped_cache_object))
    

    Django's Caching Docs

    【讨论】:

    • 看起来像我需要的 (johnny-cache) 但它在 1.6 中不起作用,我在 github 上看到它是一个未解决的问题
    • 如果你只是想缓存一个表,直接使用memcache。您是在尝试缓存对 auth_user 等 django 内置函数的调用,还是要缓存您自己构建的内容?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-12-07
    • 2014-02-08
    • 1970-01-01
    • 2023-03-22
    • 2017-05-31
    • 1970-01-01
    • 2011-01-06
    相关资源
    最近更新 更多