zoukankan      html  css  js  c++  java
  • Django 最好的缓存memcached的使用 小记

    嗯,咳咳咳咳咳,这是在win平台上。linux平台上没折腾

    首先你要在win上安装 Memcache

    下载 :点我下载 里面有x64 和 x86 的。根据自己的系统版本来选择使用

     
    使用命令行:
      1,在文件目录下  
      memcached -d install
     
      2,启动服务(默认端口是11211)
      net start "Memcached Server" (或者services.msc进入到服务,找到memcached服务,开启即可)
     
    为Django加上缓存
      
      a,安装插件
     
      
    b,在setting中配置缓存
    # settings.py中的配置
    CACHES = {
        'default': {
            'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
            'LOCATION': [
                '127.0.0.1:11211',
            ]
        }
    }



    c,在views.py中进行调用( 60*15 表示为此方法缓存时间为15分钟。对了别忘了导入)
    
    
    
    
     
    当然,上面加个装饰起的缓存方法和可以使用下面的方法实现(直接在路由中)

     如果不想为一个方法(页面)进行缓存,只想缓存某个字段的话,可以使用

    当然了针对于上面的这种方法,选取你要缓存的值是非常正确的。因为memcache为key-value数据库。不能存储对象(例如数据库查询结果对象)。

    如果要缓存对象的话,那得使用mongodb,redis也不行,因为redis也是key-value数据库。

    缓存的原理:
      原来没有的时候:
        1,Django view通过Models从DB获取数据
        2,然后调用template去渲染,形成真正的HttpResponse
        3,通过Http Socket将数据写回给客户端
      
      有了memcache:
        上面的1,2就被省了,根据url直接从缓存池里取出保存过的HttpResponse,返回给客户端

    好了,看看效果(这是使用装饰器的方法演示)

     重新选择一个城市

    结果,还是没变,还在杭州(缓存是起效了,但是看来并不适合我这,因为网站是就业平台,不能选择城市是大问题,哈哈。这里只是演示使用)

    更多内容,可访问:http://rexyan.cn
  • 相关阅读:
    jquery配合Bootstrap中的表单验证插件bootstrapValidator使用方法
    mysql限制update和delete必须加上where限制条件
    Node的express配置使用ejs模板
    mysql8用户管理
    c语言编译四大步
    windows系统安装gcc编译器----c/c++语言编译器
    c/c++语言开发工具Dev-cpp【推荐】
    c语言指针
    cmd切换代码页,切换字体,cmd不能输入中文
    windows8.1全角与半角切换快捷键
  • 原文地址:https://www.cnblogs.com/rexyan/p/6445006.html
Copyright © 2011-2022 走看看