如何在Django中使用memcached?

问题描述

在Django项目中使用Memcached时,我已经看到了很多问题,

最快,最有效的缓存类型 Django

对于实例,

那么,我们怎么才能使用它呢?

解决方法

此答案说明了如何在Windows 10上安装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,并将其提取到特定文件夹

This is the memcached folder in Windows

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

    .\memcached.exe -h
    

您应该得到这样的东西

memcached -help command

  1. 运行以下命令(-m是您要专用的内存量,-vvv是您的冗长命令)

    .\memcached.exe -m 512 -vvv
    

Memcache working fine

  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项目,启动服务器,您的时间负载应该会得到更好的结果。

Improve site performance with Memcached