2

即使启用了 Memcached,django-compressor 仍然在 COMPRESS_ROOT 文件夹中输出压缩文件是否正确?

在文档中它说:

对于生产站点,强烈建议使用真正的缓存后端(例如 memcached)来加快压缩文件的检查速度。

我在 Django 中的缓存设置正确并且可以正常工作。

CACHES = {
    'default': {
        'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache',
        'LOCATION': '127.0.0.1:11211',
        }
}

我看到的是,启用 memcached 后,如果我删除 STATIC_ROOT 文件夹,django-compressor 将不再重新生成 js/css 文件。还有人看到这种行为吗?

4

1 回答 1

1

我遇到了类似的问题。为了解决这个问题,我在我的 django 应用程序中创建了一个小的 django 管理命令来清除我在部署期间运行的 memcache。

我想如果你在很多事情上都依赖于 memcache,你可能想要更细粒度,但对我们来说,把整个缓存都炸掉就可以了。

代码如下:

from django.core.cache import cache

from django.core.management.base import BaseCommand, CommandError 
import getpass

class Command(BaseCommand):   help = 'Flush the memcache (or whatever the default caching system is)'

  def handle(self, *args, **options):
    if ("flush_all" in dir(cache._cache)):
      cache._cache.flush_all()
      print "Cache Flush Done."
    else:
      print "No-op ... this cache type has no flush"
于 2013-04-21T01:58:37.100 回答