Benutzerdefinierter Verbindungspool
Diese Methode ist dieselbe wie die normale Py-Dateioperation von Redis, der Code lautet wie folgt
Ansichten. py
import redis from django.shortcuts import render,HttpResponse from utils.redis_pool import POOL def index(request): conn = redis.Redis(connection_pool=POOL) conn.hset('kkk','age',18) return HttpResponse('设置成功') def order(request): conn = redis.Redis(connection_pool=POOL) conn.hget('kkk','age') return HttpResponse('获取成功')
Operation redis durch Komponenten von Drittanbietern
Installation
pip3 install django-redis
Konfiguration:
settings.py
# redis配置 CACHES = { "default": { "BACKEND": "django_redis.cache.RedisCache", "LOCATION": "redis://127.0.0.1:6379", "OPTIONS": { "CLIENT_CLASS": "django_redis.client.DefaultClient", "CONNECTION_POOL_KWARGS": {"max_connections": 100} # "PASSWORD": "密码", } } }
Verwenden Sie:
views.py
import redis from django.shortcuts import render,HttpResponse from django_redis import get_redis_connection def index(request): conn = get_redis_connection("default") return HttpResponse('设置成功') def order(request): conn = get_redis_connection("default") return HttpResponse('获取成功')
from rest_framework.views import APIView from rest_framework.response import Response from django.core.cache import cache class OrderView(APIView): def get(self,request,*args,**kwargs): # conn = get_redis_connection('default') cache.set('a','b') print(cache.get('a')) return Response('..')
Vollständiger Site-Cache
Verwenden Sie Middleware nach einer Reihe von Authentifizierungs- und anderen Vorgängen, wenn der Inhalt vorhanden ist Verwenden Sie im Cache FetchFromCacheMiddleware, um den Inhalt abzurufen und an den Benutzer zurückzugeben. Stellen Sie vor der Rückgabe an den Benutzer fest, ob er bereits im Cache vorhanden ist. Wenn er nicht vorhanden ist, speichert UpdateCacheMiddleware den Cache Vollständiges Site-Caching realisieren.
MIDDLEWARE = [ 'django.middleware.cache.UpdateCacheMiddleware', # 其他中间件... 'django.middleware.cache.FetchFromCacheMiddleware', ]
from django.shortcuts import render,HttpResponse import time def index(request): ctime = str(time.time()) return HttpResponse(ctime) def order(request): ctime = str(time.time()) return HttpResponse(ctime)
Einzelansicht-Caching
Methode eins: über den Dekoratorfrom django.views.decorators.cache import cache_page @cache_page(60 * 15) def my_view(request): ...
from django.views.decorators.cache import cache_page urlpatterns = [ url(r'^foo/([0-9]{1,2})/$', cache_page(60 * 15)(my_view)), ]
{% load cache %}
{% cache 5000 缓存的key %} 缓存内容 {% endcache %}
Redis-Einführungs-Tutorial.
Das obige ist der detaillierte Inhalt vonVerwendung von Django-Redis von Redis. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!