跳转至

django优化:nginx upstream+DRF缓存

Django后端调整

使用uri_hash配合Django中的drf-extensions扩展包增加缓存(当然原生Django也可以增加,这里使用了DRF框架封装好的,我们继承视图集的时候顺便继承即可)

1. 视图集原生动作使用缓存

#导入
from rest_framework_extensions.cache.mixins import ListCacheResponseMixin,RetrieveCacheResponseMixin,CacheResponseMixin
  • ListCacheResponseMixin: 给 list动作增加缓存
  • RetrieveCacheResponseMixin: 给retrieve动作增加换吨
  • CacheResponseMixin; 给所有动作增加缓存

22914-epl2lrc6lhr.png

2. 自定义动作增加缓存

## 导入
from rest_framework_extensions.cache.decorators import cache_response
  • 使用装饰器:需要给过期时间,以及缓存使用的redis库!

18684-2dfsawi2kgm.png

Nginx配置文件调整

23603-3k91ac9h648.png

1. 在setting里面需要把网址添加到可以访问的名单中

ALLOWED_HOSTS = [
    ...
    'back.baidu.com' 
    ...
]