django存储session至redis中

2019-11-27  本文已影响0人  Oooyzx

安装实验所需模块

pip3 install django-redis

pip3 install Django==2.1.5

创建django项目

django-admin startproject redis_site

修改settings.py文件

CACHES = {
    "default": {
        "BACKEND": "django_redis.cache.RedisCache",
        "LOCATION": "redis://172.22.0.9:6379",    # redis容器的ip:端口
        "OPTIONS": {
            "CLIENT_CLASS": "django_redis.client.DefaultClient",    #客户端
            "PASSWORD": "",            #设置redis密码
#             "PARSER_CLASS": "redis.connection.HiredisParser",    #解析器
#             "SOCKET_TIMEOUT": 10,        #连接超时时间
#             "CONNECTION_POOL_CLASS_KWARGS": {
#                 "max_connections": 2,             #连接池的最大连接数,满足高并发需求
#             }
        }
    }
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'

作用:django.contrib.sessions.backends.cache 设置为存储引擎

设置完后如下:


设置配置文件
django-admin startapp appredis
image.png
from django.shortcuts import render,HttpResponse

def set_session(request):
    request.session['username']='shark'
    request.session['age']=18
    return HttpResponse("设置sesson成功")

def get_session(request):
    username=request.session['username']
    age = request.session['age']
    return HttpResponse(username+":"+str(age))
image.png
from django.contrib import admin
from django.urls import path
from appredis import views
urlpatterns = [
    path('set_session/',views.set_session),
    path('get_session/',views.get_session),
    path('admin/', admin.site.urls),
]
redis-server  /etc/redis/6379.conf

redis-cli  -p  6379

发送ping命令得到pong即可
image.png
python3 manage.py runserver
redis-cli -p 6379

127.0.0.1:7001> keys *
image.png
上一篇 下一篇

猜你喜欢

热点阅读