Django實(shí)現(xiàn)內(nèi)容緩存實(shí)例方法
Django實(shí)現(xiàn)內(nèi)容緩存:
1、內(nèi)存緩存
settings.py文件配置
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.locmem.LocMemCache', # 指定緩存使用的引擎 'LOCATION': 'unique-snowflake', # 寫(xiě)在內(nèi)存中的變量的唯一值 'TIMEOUT':300, # 緩存超時(shí)時(shí)間(默認(rèn)為300秒,None表示永不過(guò)期) 'OPTIONS':{ 'MAX_ENTRIES': 300, # 最大緩存記錄的數(shù)量(默認(rèn)300) # 緩存到達(dá)最大個(gè)數(shù)之后,剔除緩存?zhèn)€數(shù)的比例,即:1/CULL_FREQUENCY(默認(rèn)3) 'CULL_FREQUENCY': 3, } } }
2、文件緩存
settings.py文件配置
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache',#指定緩存使用的引擎 'LOCATION': '/var/tmp/django_cache', #指定緩存的路徑 'TIMEOUT':300, #緩存超時(shí)時(shí)間(默認(rèn)為300秒,None表示永不過(guò)期) 'OPTIONS':{ 'MAX_ENTRIES': 300, # 最大緩存記錄的數(shù)量(默認(rèn)300) # 緩存到達(dá)最大個(gè)數(shù)之后,剔除緩存?zhèn)€數(shù)的比例,即:1/CULL_FREQUENCY(默認(rèn)3) 'CULL_FREQUENCY': 3, } } }
3、數(shù)據(jù)庫(kù)緩存
settings.py文件配置
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.db.DatabaseCache', # 指定緩存使用的引擎 'LOCATION': 'cache_table', # 數(shù)據(jù)庫(kù)表 'OPTIONS':{ 'MAX_ENTRIES': 300, # 最大緩存記錄的數(shù)量(默認(rèn)300) # 緩存到達(dá)最大個(gè)數(shù)之后,剔除緩存?zhèn)€數(shù)的比例,即:1/CULL_FREQUENCY(默認(rèn)3) 'CULL_FREQUENCY': 3, } } }
4、Mrmcache緩存
使用python-memcached模塊連接memcache
settings.py文件配置
CACHES = { 'default': { 'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',# 指定緩存使用的引擎 'LOCATION': '192.168.10.100:11211', # 指定Memcache緩存服務(wù)器的IP地址和端口 'OPTIONS':{ 'MAX_ENTRIES': 300, # 最大緩存記錄的數(shù)量(默認(rèn)300) # 緩存到達(dá)最大個(gè)數(shù)之后,剔除緩存?zhèn)€數(shù)的比例,即:1/CULL_FREQUENCY(默認(rèn)3) 'CULL_FREQUENCY': 3, } } }
使用pylibmc模塊連接memcache
settings.py文件配置
CACHES = { 'default': { # 指定緩存使用的引擎 'BACKEND': 'django.core.cache.backends.memcached.PyLibMCCache' # 指定本機(jī)的11211端口為Memcache緩存服務(wù)器 'LOCATION':'192.168.10.100:11211', 'OPTIONS':{ 'MAX_ENTRIES': 300,# 最大緩存記錄的數(shù)量(默認(rèn)300) # 緩存到達(dá)最大個(gè)數(shù)之后,剔除緩存?zhèn)€數(shù)的比例,即:1/CULL_FREQUENCY(默認(rèn)3) 'CULL_FREQUENCY': 3, }, } }
知識(shí)點(diǎn)擴(kuò)展:
1.緩存的簡(jiǎn)介
在動(dòng)態(tài)網(wǎng)站中,用戶(hù)所有的請(qǐng)求,服務(wù)器都會(huì)去數(shù)據(jù)庫(kù)中進(jìn)行相應(yīng)的增,刪,查,改,渲染模板,執(zhí)行業(yè)務(wù)邏輯,最后生成用戶(hù)看到的頁(yè)面.
當(dāng)一個(gè)網(wǎng)站的用戶(hù)訪(fǎng)問(wèn)量很大的時(shí)候,每一次的的后臺(tái)操作,都會(huì)消耗很多的服務(wù)端資源,所以必須使用緩存來(lái)減輕后端服務(wù)器的壓力.
緩存是將一些常用的數(shù)據(jù)保存內(nèi)存或者memcache中,在一定的時(shí)間內(nèi)有人來(lái)訪(fǎng)問(wèn)這些數(shù)據(jù)時(shí),則不再去執(zhí)行數(shù)據(jù)庫(kù)及渲染等操作,而是直接從內(nèi)存或memcache的緩存中去取得數(shù)據(jù),然后返回給用戶(hù).
2.Django提供了6種緩存方式
- 開(kāi)發(fā)調(diào)試緩存
- 內(nèi)存緩存
- 文件緩存
- 數(shù)據(jù)庫(kù)緩存
- Memcache緩存(使用python-memcached模塊)
- Memcache緩存(使用pylibmc模塊)
到此這篇關(guān)于Django實(shí)現(xiàn)內(nèi)容緩存實(shí)例方法的文章就介紹到這了,更多相關(guān)Django實(shí)現(xiàn)內(nèi)容緩存內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 淺談Django 頁(yè)面緩存的cache_key是如何生成的
- Django緩存Cache使用詳解
- Django如何使用redis作為緩存
- django框架用戶(hù)權(quán)限中的session緩存到redis中的方法
- Django中提供的6種緩存方式詳解
- Django緩存系統(tǒng)實(shí)現(xiàn)過(guò)程解析
- Django 緩存配置Redis使用詳解
- 全面了解django的緩存機(jī)制及使用方法
- 簡(jiǎn)單了解django緩存方式及配置
- Django使用redis緩存服務(wù)器的實(shí)現(xiàn)代碼示例
- Django項(xiàng)目如何配置Memcached和Redis緩存?選擇哪個(gè)更有優(yōu)勢(shì)?
相關(guān)文章
python 用pandas實(shí)現(xiàn)數(shù)據(jù)透視表功能
這篇文章主要介紹了python 用pandas實(shí)現(xiàn)數(shù)據(jù)透視表功能的方法,幫助大家更好的理解和使用python,感興趣的朋友可以了解下2020-12-12詳解Django自定義圖片和文件上傳路徑(upload_to)的2種方式
這篇文章主要介紹了詳解Django自定義圖片和文件上傳路徑(upload_to)的2種方式,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Python中集合類(lèi)型(set)學(xué)習(xí)小結(jié)
這篇文章主要介紹了Python中集合類(lèi)型(set)學(xué)習(xí)小結(jié),本文講解了set的初始化、運(yùn)算操作、基本方法等內(nèi)容,需要的朋友可以參考下2015-01-01Django ValuesQuerySet轉(zhuǎn)json方式
這篇文章主要介紹了Django ValuesQuerySet轉(zhuǎn)json方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03python 實(shí)現(xiàn)數(shù)組list 添加、修改、刪除的方法
下面小編就為大家分享一篇python 實(shí)現(xiàn)數(shù)組list 添加、修改、刪除的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04Python設(shè)計(jì)模式之迭代器模式原理與用法實(shí)例分析
這篇文章主要介紹了Python設(shè)計(jì)模式之迭代器模式原理與用法,結(jié)合具體實(shí)例形式分析了迭代器模式的概念、原理、定義及使用方法,代碼注釋說(shuō)明簡(jiǎn)單易懂,需要的朋友可以參考下2019-01-01在pycharm中關(guān)掉ipython console/PyDev操作
這篇文章主要介紹了在pycharm中關(guān)掉ipython console/PyDev操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06Python基于wordcloud及jieba實(shí)現(xiàn)中國(guó)地圖詞云圖
這篇文章主要介紹了Python基于wordcloud及jieba實(shí)現(xiàn)中國(guó)地圖詞云圖,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06