django使用redis:通过django-redis模块,通过配置cache来实现

安装:pip install django-redis

1、到settings文件中进行配置

#配置redis缓存,使用django-redis模块,重写文件缓存类中的所有方法
CACHES={
    "default":{
        "BACKEND":"django_redis.cache.RedisCache",
         #使用的redis数据
        "LOCATION":"redis://192.168.137.10:6379",
        "OPTIONS":{
            "CLIENT_CLASS":"django_redis.client.DefaultClient",
            #连接池最大数值
            "CONNECTION_KWARGS":{"max_connection":100},
            #"PASSWORD":'12334'redis的密码
        }
        "TIMEOUT":60*60 #设置过期时间为1小时
    }
}

2、使用方法:在视图类中或序列化器中使用

2.1、直接通过cache来使用redis数据库

       # 使用cache不需要考虑数据类型,导入cache
        from django.core.cache import cache
        #使用通过cache操作到redis,通过cache操作redis数据库
        cache.set('name','lqz1',timeout=5*60)  #设置5分钟过期

2.2、通过拿到redis的链接操作redis数据库,跟直接操作redis数据库的语法一样,要考虑数据类型

        from django_redis import get_redis_connection
        con = get_redis_connection('default')
        con.set('name','lhz',ex=5*60)

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
我想将frontend 也是用volumes,将其映射到/app/frontend目录,在/app/frontend下install以及build,如何实现 docker-compose.yml文件: version: '3' services: frontend: build: context: ./frontend dockerfile: Dockerfile ports: - 8010:80 restart: always backend: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: python manage.py runserver 0.0.0.0:8000 ports: - 8011:8000 restart: always celery-worker: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: celery -A server worker -l info --pool=solo --concurrency=1 depends_on: - redis - backend restart: always celery-beat: build: context: ./backend dockerfile: Dockerfile volumes: - /app/backend:/app environment: - CELERY_BROKER_URL=redis://redis:6379/0 command: celery -A server beat -l info --scheduler django_celery_beat.schedulers:DatabaseScheduler depends_on: - redis - backend restart: always redis: image: redis:latest ports: - 6379:6379 restart: always mysql: image: mysql:latest environment: - MYSQL_ROOT_PASSWORD=sacfxSql258147@ ports: - 8016:3306 volumes: - ./mysql:/var/lib/mysql restart: always frontend:dockerfile文件 FROM node:16.18.1 WORKDIR /app/frontend COPY package*.json ./ RUN npm install COPY . . RUN npm run build:prod FROM nginx:latest COPY --from=0 /app/frontend/dist/ /usr/share/nginx/html EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]
07-14
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值