如何在 Django 中使用 memcached?

How to use memcached in Django?

我在 Django 项目中看到了使用 Memcached 的所有问题,这被认为是

The fastest, most efficient type of cache supported natively by Django

例如,

那么,我们该如何使用呢?

此答案解释了如何在 Windows10 上安装 Memcached 以及如何通过特定客户端将其与 Django 集成。它使用 Memcached 1.4.4、Python 2.7 和 Django 1.11 进行了验证。

  1. 在你的Django项目中,在settings.py下,在文件底部添加如下代码

    SESSIONS_ENGINE='django.contrib.sessions.backends.cache'
    
    CACHES = {
        'default': {
            'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
            'LOCATION': '127.0.0.1:11211',
        }
    }
    
  2. 为 Python 安装 memcached 客户端并激活虚拟环境 (python-memcached)

    pip install python-memcached
    
  3. 使用以下下载链接之一下载 Memcached 并将其解压缩到特定文件夹

  1. 在终端或 PowerShell 中打开该文件夹位置,然后 运行

    .\memcached.exe -h
    

你应该得到这样的东西

  1. 运行 以下命令(-m 表示您要分配的内存量,-vvv 表示非常冗长)

    .\memcached.exe -m 512 -vvv
    

  1. 在要使用缓存的视图中,在urls.py中指定,如

    from django.conf.urls import include, url
    from django.views.decorators.cache import cache_page
    
    from .views import IndexView
    
    urlpatterns = [
        url(r'^$', cache_page(60*60)(IndexView.as_view()), name="index"),
    ]
    
  2. 转到 Django 项目,启动服务器,您应该会在时间负载中获得更好的结果。