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,返回給客戶端

 

好了,看看效果(這是使用裝飾器的方法演示)

 

 重新選擇一個城市

 

結果,還是沒變,還在杭州(緩存是起效了,但是看來並不適合我這,因為網站是就業平台,不能選擇城市是大問題,哈哈。這里只是演示使用)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM