djang內部快取 Redis

2021-09-23 17:16:56 字數 1158 閱讀 3528

""" 由django渲染的頁面

要被快取的區域性內容

"""

from django.views.decorators.cache import cache_page

@cache_page(10) # 代表該檢視函式渲染的頁面被快取10s

def test_cache(request):

import time

c_time = time.time()

return render(request, 'cache.html', locals())

middleware = [

# 響應httpresponse中設定幾個headers(必須放在最上方)

'django.middleware.cache.updatecachemiddleware',

# ...

# 用來快取通過get和head方法獲取的狀態碼為200的響應(必須放在最下方)

'django.middleware.cache.fetchfromcachemiddleware',

]cache_middleware_seconds = 10

# 1.安裝redis與視覺化操作工具

# 2.在服務中管理redis伺服器的開啟關閉

# 3.命令列簡單使用redis:

-- redis-cli # 啟動客戶端

-- set key value # 設定值

-- get key # 取出值

# 4.redis支援:字串、字典、列表、集合、有序集合

# 5.特點:可持久化、單執行緒單程序併發

# pip3 install redis

# 非連線池

import redis

r = redis.redis(host='127.0.0.1', port=6379)

# 連線池

import redis

pool = redis.connectionpool(host='127.0.0.1', port=6379)

r = redis.redis(connection_pool=pool)

redis的詳細操作:

快取 redis 快取穿透

哪一些因素 考慮使用redis,畢竟 redis 也要增加成本 1 熱點資料 2 讀的成本非常大 3 讀多寫少 4 對資料一致性要求 沒有那麼嚴格 可以出現資料與資料庫不一致 1 秒殺場景 3 物流查詢軌跡 熱點資料 啟用的資料是被快取到redis 當中 快取key 乙個時間點過期的時候,如果快取資...

Django內部的快取

django的配置並不只是在專案中的settings py檔案中顯示出來的那些,django的配置是很複雜,很多的 通過python manage.py shell 命令檢視一些內容 這些是列出來的一些配置的內容 以往在專案中settings py檔案中看到的那些配置只是列出來的一些可以進行手動配置...

Redis快取穿透 快取雪崩

把redis作為快取使用已經是司空見慣,但是使用redis後也可能會碰到一系列的問題,尤其是資料量很大的時候,經典的幾個問題如下 一 快取和資料庫間資料一致性問題 分布式環境下 單機就不用說了 非常容易出現快取和資料庫間的資料一致性問題,針對這一點的話,只能說,如果你的專案對快取的要求是強一致性的,...