欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django中的CACHE_BACKEND參數(shù)和站點級Cache設置

 更新時間:2015年07月23日 15:21:08   投稿:goldensun  
這篇文章主要介紹了Django中的CACHE_BACKEND參數(shù)和站點級Cache設置,Python是最具人氣的Python web框架,需要的朋友可以參考下

CACHE_BACKEND參數(shù)

每個緩存后端都可能使用參數(shù)。 它們在CACHE_BACKEND設置中以查詢字符串形式給出。 有效參數(shù)如下:

  •     timeout:用于緩存的過期時間,以秒為單位。 這個參數(shù)默認被設置為300秒(五分鐘)。
  •     max_entries:對于內(nèi)存,文件系統(tǒng)和數(shù)據(jù)庫后端,高速緩存允許的最大條目數(shù),超出這個數(shù)則舊值將被刪除。 這個參數(shù)默認是300。
  •     cull_percentage :當達到 max_entries 的時候,被刪除的條目比率。 實際的比率是 1/cull_percentage ,所以設置cull_frequency=2就是在達到 max_entries 的時候去除一半數(shù)量的緩存。

    把 cull_frequency 的值設置為 0 意味著當達到 max_entries 時,緩存將被清空。 這將以很多緩存丟失為代價,大大提高接受訪問的速度。

在這個例子中, timeout 被設成 60

CACHE_BACKEND = "memcached://127.0.0.1:11211/?timeout=60"

而在這個例子中, timeout 設為 30 而 max_entries 為 400 :

CACHE_BACKEND = "locmem:///?timeout=30&max_entries=400"

其中,非法的參數(shù)與非法的參數(shù)值都將被忽略。
站點級 Cache

一旦高速緩存設置,最簡單的方法是使用緩存緩存整個網(wǎng)站。 您 需要添加'django.middleware.cache.UpdateCacheMiddleware'和 ‘django.middleware.cache.FetchFromCacheMiddleware'到您的MIDDLEWARE_CLASSES設置中,在這個例子中是:

MIDDLEWARE_CLASSES = (
 'django.middleware.cache.UpdateCacheMiddleware',
 'django.middleware.common.CommonMiddleware',
 'django.middleware.cache.FetchFromCacheMiddleware',
)

注意:

不,這里并沒有排版錯誤: 修改的中間件,必須放在列表的開始位置,而fectch中間件,必須放在最后。 細節(jié)有點費解,如果您想了解完整內(nèi)幕請參看下面的MIDDLEWARE_CLASSES順序。

然后,在你的Django settings文件里加入下面所需的設置:

  •     CACHE_MIDDLEWARE_SECONDS :每個頁面應該被緩存的秒數(shù)。
  •     CACHE_MIDDLEWARE_KEY_PREFIX :如果緩存被多個使用相同Django安裝的網(wǎng)站所共享,那么把這個值設成當前網(wǎng)站名,或其他能代表這個Django實例的唯一字符串,以避免key發(fā)生沖突。 如果你不在意的話可以設成空字符串。

緩存中間件緩存每個沒有GET或者POST參數(shù)的頁面。 或者,如果CACHE_MIDDLEWARE_ANONYMOUS_ONLY設置為True,只有匿名請求(即不是由登錄的用戶)將被緩存。 如果想取消用戶相關(guān)頁面(user-specific pages)的緩存,例如Djangos 的管理界面,這是一種既簡單又有效的方法。 CACHE_MIDDLEWARE_ANONYMOUS_ONLY,你應該確保你已經(jīng)啟動AuthenticationMiddleware。

此外,緩存中間件為每個HttpResponse自動設置了幾個頭部信息:

  •     當一個新(沒緩存的)版本的頁面被請求時設置Last-Modified頭部為當前日期/時間。
  •     設置Expires頭部為當前日期/時間加上定義的CACHE_MIDDLEWARE_SECONDS。
  •     設置Cache-Control頭部來給頁面一個最長的有效期,值來自于CACHE_MIDDLEWARE_SECONDS設置。

如果視圖設置自己的緩存到期時間(即 它有一個最大年齡在頭部信息的Cache-Control中),那么頁面將緩存直到過期,而不是CACHE_MIDDLEWARE_SECONDS。使用django.views.decorators.cache裝飾器,您可以輕松地設置視圖的到期時間(使用cache_control裝飾器)或禁用緩存視圖(使用never_cache裝飾器)。

相關(guān)文章

  • python實現(xiàn)旋轉(zhuǎn)和水平翻轉(zhuǎn)的方法

    python實現(xiàn)旋轉(zhuǎn)和水平翻轉(zhuǎn)的方法

    今天小編就為大家分享一篇python實現(xiàn)旋轉(zhuǎn)和水平翻轉(zhuǎn)的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python自動創(chuàng)建Markdown表格使用實例探究

    Python自動創(chuàng)建Markdown表格使用實例探究

    Markdown表格是文檔中整理和展示數(shù)據(jù)的重要方式之一,然而,手動編寫大型表格可能會費時且容易出錯,本文將介紹如何使用Python自動創(chuàng)建Markdown表格,通過示例代碼詳細展示各種場景下的創(chuàng)建方法,提高表格生成的效率
    2024-01-01
  • matplotlib bar()實現(xiàn)百分比堆積柱狀圖

    matplotlib bar()實現(xiàn)百分比堆積柱狀圖

    這篇文章主要介紹了matplotlib bar()實現(xiàn)百分比堆積柱狀圖,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-02-02
  • Django 404、500頁面全局配置知識點詳解

    Django 404、500頁面全局配置知識點詳解

    在本篇文章里小編給大家整理了關(guān)于Django 404、500頁面全局配置知識點詳解,需要的朋友們可以學習下。
    2020-03-03
  • 詳解Django中CBV(Class Base Views)模型源碼分析

    詳解Django中CBV(Class Base Views)模型源碼分析

    這篇文章主要介紹了詳解Django中CBV(Class Base Views)模型源碼分析,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-02-02
  • Python中super關(guān)鍵字用法實例分析

    Python中super關(guān)鍵字用法實例分析

    這篇文章主要介紹了Python中super關(guān)鍵字用法,實例分析了super關(guān)鍵字的功能及相關(guān)使用技巧,需要的朋友可以參考下
    2015-05-05
  • Pygame如何使用精靈和碰撞檢測

    Pygame如何使用精靈和碰撞檢測

    本文主要介紹了Pygame如何使用精靈和碰撞檢測,它們能夠幫助我們跟蹤屏幕上移動的大量圖像。我們還會了解如何檢測兩個圖像相互重疊或者碰撞的方法。
    2021-11-11
  • Python 代碼實現(xiàn)各種酷炫功能

    Python 代碼實現(xiàn)各種酷炫功能

    這篇文章主要介紹了Python 代碼實現(xiàn)各種酷炫功能,生成二維碼、生成詞云、批量摳圖、文字情緒識別等功能分享,需要的小伙伴可以參考一下
    2022-03-03
  • python私有屬性和方法實例分析

    python私有屬性和方法實例分析

    這篇文章主要介紹了python私有屬性和方法的用法,實例分析了python私有屬性和方法的原理及具體使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-01-01
  • Python閉包的使用方法

    Python閉包的使用方法

    這篇文章主要介紹了Python閉包的使用方法,當返回的內(nèi)部函數(shù)使用了外部函數(shù)的變量就形成了閉包,下文更多相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-04-04

最新評論